Compare commits

...

No commits in common. "c8-stream-rhel8" and "c9s" have entirely different histories.

36 changed files with 1686 additions and 1054 deletions

5
.gitignore vendored
View File

@ -1 +1,4 @@
SOURCES/699a121bd449fe8a9350221282bd3f809691a766.tar.gz
/1ddf3baa4e26.tar.gz
/63ec7d0ee8d9.tar.gz
/8.2.0-ga.tar.gz
/repository-8.2.0-20220203.tar.gz

View File

@ -1 +0,0 @@
d9f36ea4af8af8ecb0328e1188455c64d7f8da5d SOURCES/699a121bd449fe8a9350221282bd3f809691a766.tar.gz

View File

@ -0,0 +1,389 @@
diff --git a/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml b/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
index d363cba..5bc7c45 100644
--- a/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
@@ -42,94 +42,4 @@
</parent>
<artifactId>org.openjdk.jmc.flightrecorder.flameview</artifactId>
<packaging>eclipse-plugin</packaging>
-
- <properties>
- <download.maven.plugin.version>1.6.7</download.maven.plugin.version>
- <download-maven-plugin.phase>process-resources</download-maven-plugin.phase>
- <download-maven-plugin.output>${project.basedir}/src/main/resources/jslibs</download-maven-plugin.output>
- <spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
- <spotless.config.path.js>${basedir}/../../configuration/ide/eclipse/formatting/formattingjs.xml</spotless.config.path.js>
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>com.googlecode.maven-download-plugin</groupId>
- <artifactId>download-maven-plugin</artifactId>
- <version>${download.maven.plugin.version}</version>
- <executions>
- <execution>
- <id>d3-flamegraph-css</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.css</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-v6-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://d3js.org/d3.v6.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-flamegraph-tooltip-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph-tooltip.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-flamegraph-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <!-- The formatter currently dislikes the javascript for some reason, but this is how to enable JavaScript formatting
- <plugin>
- <groupId>com.diffplug.spotless</groupId>
- <artifactId>spotless-maven-plugin</artifactId>
- <version>${spotless.version}</version>
- <configuration>
- <formats>
- <format>
- <includes>
- <include>src/main/js/*.js</include>
- </includes>
- <eclipseWtp>
- <type>JS</type>
- <files>
- <file>${spotless.config.path.js}</file>
- </files>
- </eclipseWtp>
- </format>
- </formats>
- </configuration>
- </plugin>
- -->
- </plugins>
- </build>
</project>
diff --git a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
index 93cc9a9..0e94a05 100644
--- a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
@@ -61,7 +61,6 @@ import java.util.concurrent.Executors;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level;
-import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.eclipse.jface.action.Action;
@@ -120,27 +119,17 @@ public class FlameGraphView extends ViewPart implements ISelectionListener {
private static final String TOOLTIP_DESCRIPTION = getFlameviewMessage(FLAMEVIEW_SELECT_HTML_TOOLTIP_DESCRIPTION);
private static final String HTML_PAGE;
static {
- // from: https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.css
- String cssD3Flamegraph = "jslibs/d3-flamegraph.css";
- // from: https://d3js.org/d3.v6.min.js
- String jsD3V6 = "jslibs/d3.v6.min.js";
- // from: https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph-tooltip.js
- String jsD3Tip = "jslibs/d3-flamegraph-tooltip.js";
- // from: https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.js
- String jsD3FlameGraph = "jslibs/d3-flamegraph.js";
- // jmc flameview coloring, tooltip and other functions
String jsFlameviewName = "flameview.js";
String cssFlameview = "flameview.css";
- String jsD3 = loadLibraries(jsD3V6, jsD3FlameGraph, jsD3Tip);
- String styleheets = loadLibraries(cssD3Flamegraph, cssFlameview);
+ String styleheets = fileContent(cssFlameview);
String jsFlameviewColoring = fileContent(jsFlameviewName);
String magnifierIcon = getIconBase64(ImageConstants.ICON_MAGNIFIER);
// formatter arguments for the template: %1 - CSSs stylesheets,
- // %2 - Search Icon Base64, %3 - 3rd party scripts, %4 - Flameview Coloring,
- HTML_PAGE = String.format(fileContent("page.template"), styleheets, magnifierIcon, jsD3, jsFlameviewColoring);
+ // %2 - Search Icon Base64, %3 - Flameview Coloring,
+ HTML_PAGE = String.format(fileContent("page.template"), styleheets, magnifierIcon, jsFlameviewColoring);
}
private static final int MODEL_EXECUTOR_THREADS_NUMBER = 3;
@@ -490,14 +479,6 @@ public class FlameGraphView extends ViewPart implements ISelectionListener {
}
}
- private static String loadLibraries(String ... libs) {
- if (libs == null || libs.length == 0) {
- return "";
- } else {
- return Stream.of(libs).map(FlameGraphView::fileContent).collect(Collectors.joining("\n"));
- }
- }
-
private static String fileContent(String fileName) {
try {
return StringToolkit.readString(FlameGraphView.class.getClassLoader().getResourceAsStream(fileName));
diff --git a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template
index 67bc3c7..4f0b21c 100644
--- a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template
@@ -3,6 +3,7 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.css"></link>
<style type="text/css">%1$s</style>
<style type="text/css" media="print">
body {
@@ -24,9 +25,9 @@
<script type="text/javascript">
%3$s
</script>
- <script type="text/javascript">
- %4$s
- </script>
+ <script type="text/javascript" src="https://d3js.org/d3.v6.min.js"></script>
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.js"></script>
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph-tooltip.js"></script>
<script type="text/javascript">
const minSearchTextSize = 3;
diff --git a/application/org.openjdk.jmc.flightrecorder.graphview/pom.xml b/application/org.openjdk.jmc.flightrecorder.graphview/pom.xml
index 8fcb4f2..973677e 100644
--- a/application/org.openjdk.jmc.flightrecorder.graphview/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.graphview/pom.xml
@@ -42,80 +42,4 @@
</parent>
<artifactId>org.openjdk.jmc.flightrecorder.graphview</artifactId>
<packaging>eclipse-plugin</packaging>
-
- <properties>
- <download.maven.plugin.version>1.6.7</download.maven.plugin.version>
- <download-maven-plugin.phase>process-resources</download-maven-plugin.phase>
- <download-maven-plugin.output>${project.basedir}/src/main/resources/jslibs</download-maven-plugin.output>
- <spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
- <spotless.config.path.js>${basedir}/../../configuration/ide/eclipse/formatting/formattingjs.xml</spotless.config.path.js>
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>com.googlecode.maven-download-plugin</groupId>
- <artifactId>download-maven-plugin</artifactId>
- <version>${download.maven.plugin.version}</version>
- <executions>
- <execution>
- <id>download-d3</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://d3js.org/d3.v6.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- <execution>
- <id>download-wasm</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://unpkg.com/@hpcc-js/wasm@0.3.14/dist/index.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- <execution>
- <id>download-graphviz</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://unpkg.com/d3-graphviz@3.1.0/build/d3-graphviz.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- <execution>
- <id>download-graphvizlib-wasm</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://unpkg.com/@hpcc-js/wasm@0.3.14/dist/graphvizlib.wasm</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
</project>
diff --git a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
index 536b690..f30a2c1 100644
--- a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
+++ b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
@@ -86,18 +86,7 @@ import org.openjdk.jmc.ui.misc.DisplayToolkit;
public class GraphView extends ViewPart implements ISelectionListener {
private static final String HTML_PAGE;
static {
- String jsD3 = "jslibs/d3.v6.min.js";
- String jsGraphviz = "jslibs/index.js";
- String wasmGraphviz = "jslibs/graphvizlib.wasm";
- String jsGraphizD3 = "jslibs/d3-graphviz.js";
-
- String wasmBase64 = loadBase64FromFile(wasmGraphviz);
-
- HTML_PAGE = String.format(loadStringFromFile("page.template"), loadLibraries(jsD3),
- // we inline base64 wasm in the library code to avoid fetching it at runtime
- loadStringFromFile(jsGraphviz, "wasmBinaryFile=\"graphvizlib.wasm\";",
- "wasmBinaryFile=dataURIPrefix + '" + wasmBase64 + "';"),
- loadLibraries(jsGraphizD3));
+ HTML_PAGE = String.format(loadStringFromFile("page.template"));
}
private enum ModelState {
diff --git a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/resources/page.template b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/resources/page.template
index eb7423a..c362f0c 100644
--- a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/resources/page.template
+++ b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/resources/page.template
@@ -3,9 +3,10 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
- <script>%1$s</script>
- <script>%2$s</script>
- <script>%3$s</script>
+ <script type="text/javascript" src="https://d3js.org/d3.v6.min.js"></script>
+ <script type="text/javascript" src="https://unpkg.com/@hpcc-js/wasm@0.3.14/dist/index.js"></script>
+ <script type="text/javascript" src="https://unpkg.com/d3-graphviz@3.1.0/build/d3-graphviz.js"></script>
+ <script type="text/javascript" src="https://unpkg.com/@hpcc-js/wasm@0.3.14/dist/graphvizlib.wasm"></script>
</head>
<body>
diff --git a/application/org.openjdk.jmc.flightrecorder.heatmap/pom.xml b/application/org.openjdk.jmc.flightrecorder.heatmap/pom.xml
index 138ba7f..4f7fe35 100644
--- a/application/org.openjdk.jmc.flightrecorder.heatmap/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.heatmap/pom.xml
@@ -42,38 +42,4 @@
</parent>
<artifactId>org.openjdk.jmc.flightrecorder.heatmap</artifactId>
<packaging>eclipse-plugin</packaging>
-
- <properties>
- <download.maven.plugin.version>1.4.2</download.maven.plugin.version>
- <download-maven-plugin.phase>process-resources</download-maven-plugin.phase>
- <download-maven-plugin.output>${project.basedir}/src/main/resources/jslibs</download-maven-plugin.output>
- <spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
- <spotless.config.path.js>${basedir}/../../configuration/ide/eclipse/formatting/formattingjs.xml</spotless.config.path.js>
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>com.googlecode.maven-download-plugin</groupId>
- <artifactId>download-maven-plugin</artifactId>
- <version>${download.maven.plugin.version}</version>
- <executions>
- <execution>
- <id>d3-v6-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://d3js.org/d3.v6.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
</project>
diff --git a/application/org.openjdk.jmc.flightrecorder.heatmap/src/main/java/org/openjdk/jmc/flightrecorder/heatmap/views/HeatmapView.java b/application/org.openjdk.jmc.flightrecorder.heatmap/src/main/java/org/openjdk/jmc/flightrecorder/heatmap/views/HeatmapView.java
index 96c19fc..7be0487 100644
--- a/application/org.openjdk.jmc.flightrecorder.heatmap/src/main/java/org/openjdk/jmc/flightrecorder/heatmap/views/HeatmapView.java
+++ b/application/org.openjdk.jmc.flightrecorder.heatmap/src/main/java/org/openjdk/jmc/flightrecorder/heatmap/views/HeatmapView.java
@@ -72,9 +72,7 @@ import org.openjdk.jmc.ui.misc.DisplayToolkit;
public class HeatmapView extends ViewPart implements ISelectionListener {
private static final String HTML_PAGE;
static {
- String jsD3V6 = "jslibs/d3.v6.min.js";
- HTML_PAGE = String.format(loadStringFromFile("page.template"), loadLibraries(jsD3V6),
- loadStringFromFile("heatmap.js"));
+ HTML_PAGE = String.format(loadStringFromFile("page.template"), loadStringFromFile("heatmap.js"));
}
private enum ModelState {
diff --git a/application/org.openjdk.jmc.flightrecorder.heatmap/src/main/resources/page.template b/application/org.openjdk.jmc.flightrecorder.heatmap/src/main/resources/page.template
index d6f4c5a..9a13f40 100644
--- a/application/org.openjdk.jmc.flightrecorder.heatmap/src/main/resources/page.template
+++ b/application/org.openjdk.jmc.flightrecorder.heatmap/src/main/resources/page.template
@@ -2,15 +2,13 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
- <script>
- %1$s
- </script>
+ <script type="text/javascript" src="https://d3js.org/d3.v6.min.js"></script>
</head>
<body>
<div id="heatmap" width="100%%" style="text-align: center"></div>
<script type="text/javascript">
- %2$s
+ %1$s
</script>
</body>
</html>

View File

@ -1,8 +1,7 @@
diff --git a/application/org.openjdk.jmc.rjmx/META-INF/MANIFEST.MF b/application/org.openjdk.jmc.rjmx/META-INF/MANIFEST.MF
index 775f1d8..979a323 100644
--- a/application/org.openjdk.jmc.rjmx/META-INF/MANIFEST.MF
+++ b/application/org.openjdk.jmc.rjmx/META-INF/MANIFEST.MF
@@ -57,7 +57,6 @@ Export-Package: org.openjdk.jmc.rjmx,
@@ -54,7 +54,6 @@
org.openjdk.jmc.rjmx.triggers;
x-friends:="org.openjdk.jmc.console.ui.notification,
org.openjdk.jmc.alert,
@ -11,10 +10,9 @@ index 775f1d8..979a323 100644
org.openjdk.jmc.rjmx.triggers.actions.internal;x-friends:="org.openjdk.jmc.console.ui.notification",
org.openjdk.jmc.rjmx.triggers.condition.internal;x-friends:="org.openjdk.jmc.console.ui.notification,org.openjdk.jmc.test.jemmy",
diff --git a/application/pom.xml b/application/pom.xml
index 9f8783a..7aa8842 100644
--- a/application/pom.xml
+++ b/application/pom.xml
@@ -59,7 +59,6 @@
@@ -50,7 +50,6 @@
<module>org.openjdk.jmc.console.jconsole</module>
<module>org.openjdk.jmc.console.pde</module>
<module>org.openjdk.jmc.console.persistence</module>
@ -22,7 +20,7 @@ index 9f8783a..7aa8842 100644
<module>org.openjdk.jmc.console.ui</module>
<module>org.openjdk.jmc.console.ui.diagnostic</module>
<module>org.openjdk.jmc.console.ui.mbeanbrowser</module>
@@ -81,7 +80,6 @@
@@ -72,7 +71,6 @@
<module>org.openjdk.jmc.feature.pde</module>
<module>org.openjdk.jmc.feature.rcp</module>
<module>org.openjdk.jmc.feature.rcp.update</module>
@ -31,18 +29,17 @@ index 9f8783a..7aa8842 100644
<module>org.openjdk.jmc.flightrecorder.controlpanel.ui</module>
<module>org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration</module>
diff --git a/license/THIRDPARTYREADME.txt b/license/THIRDPARTYREADME.txt
index 596a8db..ba7bf83 100644
--- a/license/THIRDPARTYREADME.txt
+++ b/license/THIRDPARTYREADME.txt
@@ -297,187 +297,6 @@ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
@@ -296,191 +296,6 @@
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.
-%% The following notice is provided with respect to Twitter4J v4.0.7,
-
-%% The following notice is provided with respect to Twitter4J 4.0.7,
-which may be included with this product.
-
- Copyright 2007 Yusuke Yamamoto
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
@ -218,7 +215,11 @@ index 596a8db..ba7bf83 100644
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
-Twitter4J SUBCOMPONENTS:
-
%% The following notice is provided with respect to D3 v6.1.3, which may
be included with this product.
-Twitter4J includes software from JSON.org to parse JSON response from the Twitter API. You can see the license term at http://www.JSON.org/license.html
-
-
%% The following notice is provided with respect to JavaBeans Activation
Framework (JAF) 1.2.1, which may be included with this product.

View File

@ -0,0 +1,21 @@
diff --git a/pom.xml b/pom.xml
index be477c2e..7b6afef0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -247,16 +247,6 @@
<ws>gtk</ws>
<arch>x86_64</arch>
</environment>
- <environment>
- <os>macosx</os>
- <ws>cocoa</ws>
- <arch>x86_64</arch>
- </environment>
- <environment>
- <os>macosx</os>
- <ws>cocoa</ws>
- <arch>aarch64</arch>
- </environment>
</environments>
</configuration>
</plugin>

358
10-revert-flameview.patch Normal file
View File

@ -0,0 +1,358 @@
# HG changeset patch
# Parent 37a493c3f60b2015c37630807015b217b98106cf
diff -r 37a493c3f60b -r bbf0648beb5c application/org.openjdk.jmc.flightrecorder.flameview/.classpath
--- a/application/org.openjdk.jmc.flightrecorder.flameview/.classpath Tue Nov 12 16:25:24 2019 +0100
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/.classpath Mon Nov 25 17:57:23 2019 -0500
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src/main/java"/>
- <classpathentry kind="src" path="src/main/resources"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
<attributes>
<attribute name="maven.pomderived" value="true"/>
diff -r 37a493c3f60b -r bbf0648beb5c application/org.openjdk.jmc.flightrecorder.flameview/build.properties
--- a/application/org.openjdk.jmc.flightrecorder.flameview/build.properties Tue Nov 12 16:25:24 2019 +0100
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/build.properties Mon Nov 25 17:57:23 2019 -0500
@@ -1,5 +1,4 @@
-source.. = src/main/java/,\
- src/main/resources/
+source.. = src/main/java/
output.. = target/classes/
bin.includes = META-INF/,\
.,\
diff -r 37a493c3f60b -r bbf0648beb5c application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
--- a/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml Tue Nov 12 16:25:24 2019 +0100
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml Mon Nov 25 17:57:23 2019 -0500
@@ -41,94 +41,4 @@
</parent>
<artifactId>org.openjdk.jmc.flightrecorder.flameview</artifactId>
<packaging>eclipse-plugin</packaging>
-
- <properties>
- <download.maven.plugin.version>1.4.2</download.maven.plugin.version>
- <download-maven-plugin.phase>process-resources</download-maven-plugin.phase>
- <download-maven-plugin.output>${project.basedir}/src/main/resources/jslibs</download-maven-plugin.output>
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>com.googlecode.maven-download-plugin</groupId>
- <artifactId>download-maven-plugin</artifactId>
- <version>${download.maven.plugin.version}</version>
- <executions>
- <execution>
- <id>d3-flamegraph-css</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdn.jsdelivr.net/gh/spiermar/d3-flame-graph@2.0.3/dist/d3-flamegraph.css</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>ie-html5shiv-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>ie-respond-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://oss.maxcdn.com/respond/1.4.2/respond.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-v4-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://d3js.org/d3.v4.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-tip-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdnjs.cloudflare.com/ajax/libs/d3-tip/0.9.1/d3-tip.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-flamegraph-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdn.jsdelivr.net/gh/spiermar/d3-flame-graph@2.0.3/dist/d3-flamegraph.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
</project>
diff -r 37a493c3f60b -r bbf0648beb5c application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
--- a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java Tue Nov 12 16:25:24 2019 +0100
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java Mon Nov 25 17:57:23 2019 -0500
@@ -34,14 +34,11 @@
package org.openjdk.jmc.flightrecorder.flameview.views;
import java.io.IOException;
-
-import java.text.MessageFormat;
import java.util.concurrent.CancellationException;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.logging.Level;
-import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.eclipse.jface.action.Action;
@@ -77,32 +74,7 @@
import org.openjdk.jmc.ui.misc.DisplayToolkit;
public class FlameGraphView extends ViewPart implements ISelectionListener {
- private static final String HTML_PAGE;
- static {
- // from: https://cdn.jsdelivr.net/gh/spiermar/d3-flame-graph@2.0.3/dist/d3-flamegraph.css
- String cssD3Flamegraph = "jslibs/d3-flamegraph.css";
- // from: https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js
- String jsHtml5shiv = "jslibs/html5shiv.min.js";
- // from: https://oss.maxcdn.com/respond/1.4.2/respond.min.js
- String jsRespond = "jslibs/respond.min.js";
- // from: https://d3js.org/d3.v4.min.js
- String jsD3V4 = "jslibs/d3.v4.min.js";
- // from: https://cdnjs.cloudflare.com/ajax/libs/d3-tip/0.9.1/d3-tip.min.js
- String jsD3Tip = "jslibs/d3-tip.min.js";
- // from: https://cdn.jsdelivr.net/gh/spiermar/d3-flame-graph@2.0.3/dist/d3-flamegraph.min.js
- String jsD3FlameGraph = "jslibs/d3-flamegraph.min.js";
-
- String jsIeLibraries = loadLibraries(jsHtml5shiv, jsRespond);
- String jsD3Libraries = loadLibraries(jsD3V4, jsD3Tip, jsD3FlameGraph);
-
- // formatter arguments for the template: %1 - CSSs, %2 - IE9 specific scripts, %3 - 3rd party scripts
- HTML_PAGE = String.format(fileContent("page.template"),
- fileContent(cssD3Flamegraph),
- jsIeLibraries,
- jsD3Libraries);
- }
-
- private static final ExecutorService MODEL_EXECUTOR = Executors.newFixedThreadPool(1);
+ private static ExecutorService MODEL_EXECUTOR = Executors.newFixedThreadPool(1);
private FrameSeparator frameSeparator;
private Browser browser;
@@ -207,6 +179,13 @@
}, MODEL_EXECUTOR);
}
+ private static Void handleModelBuildException(Throwable ex) {
+ if (!(ex.getCause() instanceof CancellationException)) {
+ FlightRecorderUI.getDefault().getLogger().log(Level.SEVERE, "Failed to build stacktrace view model", ex); //$NON-NLS-1$
+ }
+ return null;
+ }
+
private void setModel(TraceNode root) {
if (!browser.isDisposed() && !root.equals(currentRoot)) {
currentRoot = root;
@@ -215,21 +194,19 @@
}
private void setViewerInput(TraceNode root) {
- browser.setText(HTML_PAGE);
- browser.addProgressListener(new ProgressAdapter() {
- @Override
- public void completed(ProgressEvent event) {
- browser.removeProgressListener(this);
- browser.execute(String.format("processGraph(%s);", toJSon(root)));
- }
- });
- }
-
- private static Void handleModelBuildException(Throwable ex) {
- if (!(ex.getCause() instanceof CancellationException)) {
- FlightRecorderUI.getDefault().getLogger().log(Level.SEVERE, "Failed to build stacktrace view model", ex); //$NON-NLS-1$
+ try {
+ browser.setText(StringToolkit.readString(FlameGraphView.class.getResourceAsStream("page.html")));
+ browser.addProgressListener(new ProgressAdapter() {
+ @Override
+ public void completed(ProgressEvent event) {
+ browser.removeProgressListener(this);
+ browser.execute(String.format("processGraph(%s);", toJSon(root)));
+ }
+ });
+ } catch (IOException e) {
+ browser.setText(e.getMessage());
+ e.printStackTrace();
}
- return null;
}
private static String toJSon(TraceNode root) {
@@ -261,23 +238,4 @@
private static String toJSonKeyValue(String key, String value) {
return "\"" + key + "\": " + "\"" + value + "\"";
}
-
- private static String loadLibraries(String... libs) {
- if(libs == null || libs.length == 0) {
- return "";
- } else {
- return Stream.of(libs).map(FlameGraphView::fileContent).collect(Collectors.joining("\n"));
- }
- }
-
- private static String fileContent(String fileName){
- try {
- return StringToolkit.readString(FlameGraphView.class.getClassLoader().getResourceAsStream(fileName));
- } catch (IOException e) {
- FlightRecorderUI.getDefault().getLogger()
- .log(Level.WARNING, MessageFormat
- .format("Could not load script \"{0}\",\"{1}\"", fileName, e.getMessage())); //$NON-NLS-1$
- return "";
- }
- }
}
diff -r 37a493c3f60b -r bbf0648beb5c application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/page.html
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/page.html Mon Nov 25 17:57:23 2019 -0500
@@ -0,0 +1,54 @@
+<!DOCTYPE html "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=utf-8" />
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/spiermar/d3-flame-graph@2.0.3/dist/d3-flamegraph.css">
+ <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+ <!--[if lt IE 9]>
+ <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+ <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+ <![endif]-->
+</head>
+
+<body onresize="resizeFlameGraph()">
+ <div id="chart"></div>
+
+ <script type="text/javascript" src="https://d3js.org/d3.v4.min.js"></script>
+ <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/d3-tip/0.9.1/d3-tip.min.js"></script>
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/gh/spiermar/d3-flame-graph@2.0.3/dist/d3-flamegraph.min.js"></script>
+ <script type="text/javascript">
+
+ var flameGraph;
+ var currentJson;
+
+ function processGraph(jsonObj) {
+ flameGraph = d3.flamegraph()
+ .width(windowSize() * 0.9)
+ .transitionDuration(500)
+ .transitionEase(d3.easeCubic)
+ .sort(true)
+ .title("");
+ currentJson = jsonObj;
+ d3.select("#chart")
+ .datum(currentJson)
+ .call(flameGraph);
+ }
+
+ function windowSize() {
+ return Math.max(document.documentElement.clientWidth, window.innerWidth || 0);
+ }
+
+ function resizeFlameGraph() {
+ if (flameGraph) {
+ flameGraph.width(windowSize() * 0.9);
+ d3.select("#chart")
+ .datum(currentJson)
+ .call(flameGraph);
+ }
+ }
+
+ </script>
+</body>
+
+</html>
diff -r 37a493c3f60b -r bbf0648beb5c application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template
--- a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template Tue Nov 12 16:25:24 2019 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-<!DOCTYPE html "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=utf-8" />
- <style type="text/css">%1$s</style>
- <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
- <!--[if lt IE 9]>
- <script>%2$s</script>
- <![endif]-->
-</head>
-
-<body onresize="resizeFlameGraph()">
- <div id="chart"></div>
- <script type="text/javascript">%3$s</script>
- <script type="text/javascript">
-
- var flameGraph;
- var currentJson;
-
- function processGraph(jsonObj) {
- flameGraph = d3.flamegraph()
- .width(windowSize() * 0.9)
- .transitionDuration(500)
- .transitionEase(d3.easeCubic)
- .sort(true)
- .title("");
- currentJson = jsonObj;
- d3.select("#chart")
- .datum(currentJson)
- .call(flameGraph);
- }
-
- function windowSize() {
- return Math.max(document.documentElement.clientWidth, window.innerWidth || 0);
- }
-
- function resizeFlameGraph() {
- if (flameGraph) {
- flameGraph.width(windowSize() * 0.9);
- d3.select("#chart")
- .datum(currentJson)
- .call(flameGraph);
- }
- }
-
- </script>
-</body>
-</html>
\ No newline at end of file

View File

@ -1,14 +1,15 @@
diff --git a/application/org.openjdk.jmc.rcp.product/jmc.product b/application/org.openjdk.jmc.rcp.product/jmc.product
index 54b2590..ba10585 100644
--- a/application/org.openjdk.jmc.rcp.product/jmc.product
+++ b/application/org.openjdk.jmc.rcp.product/jmc.product
@@ -56,8 +56,7 @@
# HG changeset patch
# Parent 58eadb7c7ac8a81f6df4a70ecd5ecd69a8b42b0a
diff -r 58eadb7c7ac8 -r 8992119f0f37 application/org.openjdk.jmc.rcp.product/jmc.product
--- a/application/org.openjdk.jmc.rcp.product/jmc.product Mon Aug 31 16:04:24 2020 -0400
+++ b/application/org.openjdk.jmc.rcp.product/jmc.product Mon Aug 31 16:05:21 2020 -0400
@@ -56,7 +56,7 @@
</programArgsMac>
<programArgsWin>
</programArgsWin>
- <vmArgs>-XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -XX:FlightRecorderOptions=stackdepth=128 -XX:+FlightRecorder -XX:StartFlightRecording=name=JMC_Default,maxsize=100m -Djava.net.preferIPv4Stack=true -Djdk.attach.allowAttachSelf=true --add-exports=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-exports=java.management/sun.management=ALL-UNNAMED --add-exports=java.management/sun.management.counter.perf=ALL-UNNAMED --add-exports=jdk.management.agent/jdk.internal.agent=ALL-UNNAMED --add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED
- -Dsun.java.command=JMC
+ <vmArgs>-XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -Djava.net.preferIPv4Stack=true -Djdk.attach.allowAttachSelf=true --add-exports=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-exports=java.management/sun.management=ALL-UNNAMED --add-exports=java.management/sun.management.counter.perf=ALL-UNNAMED --add-exports=jdk.management.agent/jdk.internal.agent=ALL-UNNAMED --add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED
- <vmArgs>-XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -XX:FlightRecorderOptions=stackdepth=128 -XX:+FlightRecorder -XX:StartFlightRecording=name=JMC_Default,maxsize=100m -Djava.net.preferIPv4Stack=true -Djdk.attach.allowAttachSelf=true --add-exports=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-exports=java.management/sun.management=ALL-UNNAMED --add-exports=java.management/sun.management.counter.perf=ALL-UNNAMED --add-exports=jdk.management.agent/jdk.internal.agent=ALL-UNNAMED --add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED
+ <vmArgs>-XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -Djava.net.preferIPv4Stack=true -Djdk.attach.allowAttachSelf=true --add-exports=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-exports=java.management/sun.management=ALL-UNNAMED --add-exports=java.management/sun.management.counter.perf=ALL-UNNAMED --add-exports=jdk.management.agent/jdk.internal.agent=ALL-UNNAMED --add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED
</vmArgs>
<vmArgsLin>--add-exports=java.desktop/sun.awt.X11=ALL-UNNAMED
</vmArgsLin>

20
12-tycho.patch Normal file
View File

@ -0,0 +1,20 @@
diff -r 63ec7d0ee8d9 pom.xml
--- a/pom.xml Mon Jun 08 12:37:07 2020 -0400
+++ b/pom.xml Fri Jan 22 14:13:15 2021 -0500
@@ -75,7 +75,7 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
- <tycho.version>1.4.0</tycho.version>
+ <tycho.version>2.1.0</tycho.version>
<maven.buildnumber.version>1.4</maven.buildnumber.version>
<maven.deploy.version>2.8.2</maven.deploy.version>
<maven.directory.version>0.2</maven.directory.version>
@@ -282,6 +282,7 @@
<version>${tycho.version}</version>
<configuration>
<useProjectSettings>false</useProjectSettings>
+ <deriveReleaseCompilerArgumentFromTargetLevel>false</deriveReleaseCompilerArgumentFromTargetLevel>
</configuration>
</plugin>
<plugin>

34
2-javax.patch Normal file
View File

@ -0,0 +1,34 @@
# HG changeset patch
# Parent f4accaf7605c6e7ed1ea968740e8c1cac0c9e8e4
diff -r f4accaf7605c application/org.openjdk.jmc.console.ui/META-INF/MANIFEST.MF
--- a/application/org.openjdk.jmc.console.ui/META-INF/MANIFEST.MF Fri Aug 28 12:19:55 2020 -0400
+++ b/application/org.openjdk.jmc.console.ui/META-INF/MANIFEST.MF Fri Aug 28 12:27:37 2020 -0400
@@ -10,7 +10,6 @@
Require-Bundle: org.openjdk.jmc.rjmx.ui;visibility:=reexport,
org.eclipse.e4.core.contexts;bundle-version="1.3.0",
org.eclipse.e4.core.di;bundle-version="1.3.0";visibility:=reexport,
- javax.annotation;bundle-version="1.0.0";visibility:=reexport,
javax.inject;bundle-version="1.0.0";visibility:=reexport,
org.openjdk.jmc.commands
Bundle-ActivationPolicy: lazy
@@ -24,7 +23,6 @@
org.openjdk.jmc.console.ui.messages.internal;x-friends:="org.openjdk.jmc.console.uitest",
org.openjdk.jmc.console.ui.preferences;x-friends:="org.openjdk.jmc.console.uitest"
Bundle-ClassPath: .
-Import-Package: javax.annotation;version="1.0.0",
- javax.inject;version="1.0.0"
+Import-Package: javax.inject;version="1.0.0"
Automatic-Module-Name: org.openjdk.jmc.console.ui
diff -r f4accaf7605c application/org.openjdk.jmc.feature.rcp/feature.xml
--- a/application/org.openjdk.jmc.feature.rcp/feature.xml Fri Aug 28 12:19:55 2020 -0400
+++ b/application/org.openjdk.jmc.feature.rcp/feature.xml Fri Aug 28 12:27:37 2020 -0400
@@ -88,7 +88,6 @@
<import plugin="org.eclipse.ui.intro"/>
<import plugin="org.eclipse.ui.net"/>
<import plugin="org.eclipse.equinox.event"/>
- <import plugin="javax.el"/>
<import plugin="org.eclipse.equinox.p2.director.app"/>
</requires>

13
2-skip-writer-tests.patch Normal file
View File

@ -0,0 +1,13 @@
diff --git a/core/tests/pom.xml b/core/tests/pom.xml
index f19a8ed..1f4db29 100644
--- a/core/tests/pom.xml
+++ b/core/tests/pom.xml
@@ -46,7 +46,7 @@
<module>org.openjdk.jmc.flightrecorder.test</module>
<module>org.openjdk.jmc.flightrecorder.rules.test</module>
<module>org.openjdk.jmc.flightrecorder.rules.jdk.test</module>
- <module>org.openjdk.jmc.flightrecorder.writer.test</module>
+ <!-- <module>org.openjdk.jmc.flightrecorder.writer.test</module> -->
<module>org.openjdk.jmc.flightrecorder.serializers.test</module>
<module>org.openjdk.jmc.jdp.test</module>
</modules>

View File

@ -1,35 +1,13 @@
diff --git a/pom.xml b/pom.xml
index 3c27d3b..22ce8b7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -109,95 +109,6 @@
diff -r b0ad84913481 pom.xml
--- a/pom.xml Mon Apr 27 14:18:01 2020 -0400
+++ b/pom.xml Mon Apr 27 14:19:15 2020 -0400
@@ -105,137 +105,6 @@
<url>${snapshot.repo}</url>
</snapshotRepository>
</distributionManagement>
- <profiles>
- <profile>
- <id>2020-12</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>target-platform-configuration</artifactId>
- <version>${tycho.version}</version>
- <configuration>
- <target>
- <artifact>
- <groupId>org.openjdk.jmc</groupId>
- <artifactId>platform-definition-2020-12</artifactId>
- <version>8.0.1-SNAPSHOT</version>
- </artifact>
- </target>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- <profile>
- <id>2020-09</id>
- <id>2019-09</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
@ -43,8 +21,8 @@ index 3c27d3b..22ce8b7 100644
- <target>
- <artifact>
- <groupId>org.openjdk.jmc</groupId>
- <artifactId>platform-definition-2020-09</artifactId>
- <version>8.0.1-SNAPSHOT</version>
- <artifactId>platform-definition-2019-09</artifactId>
- <version>7.1.1-SNAPSHOT</version>
- </artifact>
- </target>
- </configuration>
@ -53,7 +31,7 @@ index 3c27d3b..22ce8b7 100644
- </build>
- </profile>
- <profile>
- <id>2020-06</id>
- <id>2019-06</id>
- <build>
- <plugins>
- <plugin>
@ -64,8 +42,8 @@ index 3c27d3b..22ce8b7 100644
- <target>
- <artifact>
- <groupId>org.openjdk.jmc</groupId>
- <artifactId>platform-definition-2020-06</artifactId>
- <version>8.0.1-SNAPSHOT</version>
- <artifactId>platform-definition-2019-06</artifactId>
- <version>7.1.1-SNAPSHOT</version>
- </artifact>
- </target>
- </configuration>
@ -74,7 +52,7 @@ index 3c27d3b..22ce8b7 100644
- </build>
- </profile>
- <profile>
- <id>2020-03</id>
- <id>2019-03</id>
- <build>
- <plugins>
- <plugin>
@ -85,8 +63,71 @@ index 3c27d3b..22ce8b7 100644
- <target>
- <artifact>
- <groupId>org.openjdk.jmc</groupId>
- <artifactId>platform-definition-2020-03</artifactId>
- <version>8.0.1-SNAPSHOT</version>
- <artifactId>platform-definition-2019-03</artifactId>
- <version>7.1.1-SNAPSHOT</version>
- </artifact>
- </target>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- <profile>
- <id>2018-12</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>target-platform-configuration</artifactId>
- <version>${tycho.version}</version>
- <configuration>
- <target>
- <artifact>
- <groupId>org.openjdk.jmc</groupId>
- <artifactId>platform-definition-2018-12</artifactId>
- <version>7.1.1-SNAPSHOT</version>
- </artifact>
- </target>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- <profile>
- <id>2018-09</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>target-platform-configuration</artifactId>
- <version>${tycho.version}</version>
- <configuration>
- <target>
- <artifact>
- <groupId>org.openjdk.jmc</groupId>
- <artifactId>platform-definition-2018-09</artifactId>
- <version>7.1.1-SNAPSHOT</version>
- </artifact>
- </target>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- <profile>
- <id>photon</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>target-platform-configuration</artifactId>
- <version>${tycho.version}</version>
- <configuration>
- <target>
- <artifact>
- <groupId>org.openjdk.jmc</groupId>
- <artifactId>platform-definition-photon</artifactId>
- <version>7.1.1-SNAPSHOT</version>
- </artifact>
- </target>
- </configuration>

View File

@ -1,8 +1,8 @@
diff --git a/application/org.openjdk.jmc.feature.ide/feature.xml b/application/org.openjdk.jmc.feature.ide/feature.xml
index 8e2f469a..3544694a 100644
index cd3dc7e..128cd0b 100644
--- a/application/org.openjdk.jmc.feature.ide/feature.xml
+++ b/application/org.openjdk.jmc.feature.ide/feature.xml
@@ -69,11 +69,4 @@
@@ -65,11 +65,4 @@
install-size="0"
version="0.0.0"
unpack="false"/>
@ -16,14 +16,14 @@ index 8e2f469a..3544694a 100644
</feature>
\ No newline at end of file
diff --git a/application/pom.xml b/application/pom.xml
index adefed26..87cb00c0 100644
index d185d9d..89fd033 100644
--- a/application/pom.xml
+++ b/application/pom.xml
@@ -94,7 +94,6 @@
@@ -77,7 +77,6 @@
<module>org.openjdk.jmc.flightrecorder.ui</module>
<module>org.openjdk.jmc.greychart</module>
<module>org.openjdk.jmc.greychart.ui</module>
- <module>org.openjdk.jmc.ide.jdt</module>
<module>org.openjdk.jmc.ide.launch</module>
<module>org.openjdk.jmc.ide.ui</module>
<module>org.openjdk.jmc.joverflow</module>
<module>org.openjdk.jmc.jdp</module>

15
9-remove-jacoco-dep.patch Normal file
View File

@ -0,0 +1,15 @@
diff -r 823b959b0e26 application/pom.xml
--- a/application/pom.xml Mon Apr 27 14:22:34 2020 -0400
+++ b/application/pom.xml Mon Apr 27 14:23:07 2020 -0400
@@ -160,11 +160,6 @@
<artifactId>flightrecorder.rules.jdk</artifactId>
<version>7.1.1</version>
</dependency>
- <dependency>
- <groupId>org.jacoco</groupId>
- <artifactId>jacoco-maven-plugin</artifactId>
- <version>0.8.3</version>
- </dependency>
</dependencies>
<build>
<plugins>

3
README.md Normal file
View File

@ -0,0 +1,3 @@
# jmc
The jmc package

View File

@ -1,42 +0,0 @@
diff --git a/application/org.openjdk.jmc.feature.core/feature.xml b/application/org.openjdk.jmc.feature.core/feature.xml
index f42eed3..b53c5e5 100644
--- a/application/org.openjdk.jmc.feature.core/feature.xml
+++ b/application/org.openjdk.jmc.feature.core/feature.xml
@@ -95,7 +95,7 @@
unpack="false"/>
<plugin
- id="org.lz4.lz4-java"
+ id="lz4-java"
download-size="0"
install-size="0"
version="0.0.0"
diff --git a/application/org.openjdk.jmc.feature.flightrecorder/feature.xml b/application/org.openjdk.jmc.feature.flightrecorder/feature.xml
index cd6d0f9..22638fe 100644
--- a/application/org.openjdk.jmc.feature.flightrecorder/feature.xml
+++ b/application/org.openjdk.jmc.feature.flightrecorder/feature.xml
@@ -130,7 +130,7 @@
unpack="false"/>
<plugin
- id="org.lz4.lz4-java"
+ id="lz4-java"
download-size="0"
install-size="0"
version="0.0.0"
diff --git a/releng/third-party/pom.xml b/releng/third-party/pom.xml
index 8e0dd86..aba63c8 100644
--- a/releng/third-party/pom.xml
+++ b/releng/third-party/pom.xml
@@ -88,11 +88,6 @@
</artifact>
<artifact>
<id>org.lz4:lz4-java:${lz4.version}</id>
- <override>true</override>
- <instructions>
- <Bundle-Name>org.lz4.lz4-java</Bundle-Name>
- <Bundle-SymbolicName>org.lz4.lz4-java</Bundle-SymbolicName>
- </instructions>
</artifact>
<artifact>
<id>org.hdrhistogram:HdrHistogram:${hdrhistogram.version}</id>

View File

@ -1,23 +0,0 @@
diff --git a/pom.xml b/pom.xml
index 329f840..c5f06c9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -77,7 +77,7 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
- <tycho.version>2.0.0</tycho.version>
+ <tycho.version>2.1.0</tycho.version>
<maven.buildnumber.version>1.4</maven.buildnumber.version>
<maven.deploy.version>2.8.2</maven.deploy.version>
<maven.directory.version>0.3.1</maven.directory.version>
@@ -144,7 +144,8 @@
<artifactId>tycho-compiler-plugin</artifactId>
<version>${tycho.version}</version>
<configuration>
- <useProjectSettings>false</useProjectSettings>
+ <useProjectSettings>false</useProjectSettings>
+ <deriveReleaseCompilerArgumentFromTargetLevel>false</deriveReleaseCompilerArgumentFromTargetLevel>
</configuration>
</plugin>
<plugin>

View File

@ -1,130 +0,0 @@
diff --git a/application/org.openjdk.jmc.flightrecorder.graphview/pom.xml b/application/org.openjdk.jmc.flightrecorder.graphview/pom.xml
index 9e05408..733fcd4 100644
--- a/application/org.openjdk.jmc.flightrecorder.graphview/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.graphview/pom.xml
@@ -42,80 +42,4 @@
</parent>
<artifactId>org.openjdk.jmc.flightrecorder.graphview</artifactId>
<packaging>eclipse-plugin</packaging>
-
- <properties>
- <download.maven.plugin.version>1.4.2</download.maven.plugin.version>
- <download-maven-plugin.phase>process-resources</download-maven-plugin.phase>
- <download-maven-plugin.output>${project.basedir}/src/main/resources/jslibs</download-maven-plugin.output>
- <spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
- <spotless.config.path.js>${basedir}/../../configuration/ide/eclipse/formatting/formattingjs.xml</spotless.config.path.js>
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>com.googlecode.maven-download-plugin</groupId>
- <artifactId>download-maven-plugin</artifactId>
- <version>${download.maven.plugin.version}</version>
- <executions>
- <execution>
- <id>d3-v5-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://d3js.org/d3.v5.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- <execution>
- <id>wasm</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://unpkg.com/@hpcc-js/wasm@0.3.14/dist/index.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- <execution>
- <id>d3-graphviz-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://unpkg.com/d3-graphviz@3.1.0/build/d3-graphviz.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- <execution>
- <id>graphvizlib-wasm</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://unpkg.com/@hpcc-js/wasm@0.3.14/dist/graphvizlib.wasm</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- <skipCache>true</skipCache>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
</project>
diff --git a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
index 1389545..d356c2e 100644
--- a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
+++ b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
@@ -85,18 +85,7 @@ import org.openjdk.jmc.ui.misc.DisplayToolkit;
public class GraphView extends ViewPart implements ISelectionListener {
private static final String HTML_PAGE;
static {
- String jsD3V5 = "jslibs/d3.v5.min.js";
- String jsGraphviz = "jslibs/index.js";
- String wasmGraphviz = "jslibs/graphvizlib.wasm";
- String jsGraphizD3 = "jslibs/d3-graphviz.js";
-
- String wasmBase64 = loadBase64FromFile(wasmGraphviz);
-
- HTML_PAGE = String.format(loadStringFromFile("page.template"), loadLibraries(jsD3V5),
- // we inline base64 wasm in the library code to avoid fetching it at runtime
- loadStringFromFile(jsGraphviz, "wasmBinaryFile=\"graphvizlib.wasm\";",
- "wasmBinaryFile=dataURIPrefix + '" + wasmBase64 + "';"),
- loadLibraries(jsGraphizD3));
+ HTML_PAGE = String.format(loadStringFromFile("page.template"));
}
private enum ModelState {
diff --git a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/resources/page.template b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/resources/page.template
index eb7423a..e424576 100644
--- a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/resources/page.template
+++ b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/resources/page.template
@@ -3,12 +3,13 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
- <script>%1$s</script>
- <script>%2$s</script>
- <script>%3$s</script>
</head>
<body>
+ <script type="text/javascript" src="https://d3js.org/d3.v5.min.js"></script>
+ <script type="text/javascript" src="https://unpkg.com/@hpcc-js/wasm@0.3.14/dist/index.js"></script>
+ <script type="text/javascript" src="https://unpkg.com/d3-graphviz@3.1.0/build/d3-graphviz.js"></script>
+ <script type="text/javascript" src="https://unpkg.com/@hpcc-js/wasm@0.3.14/dist/graphvizlib.wasm"></script>
<div id="graph" style="text-align: center;"></div>
<script type="text/javascript">

View File

@ -1,12 +0,0 @@
diff --git a/application/org.openjdk.jmc.rcp.product/pom.xml b/application/org.openjdk.jmc.rcp.product/pom.xml
index 2ebccfb..1cc8aca 100644
--- a/application/org.openjdk.jmc.rcp.product/pom.xml
+++ b/application/org.openjdk.jmc.rcp.product/pom.xml
@@ -74,7 +74,6 @@
<rootFolders>
<win32>${productName}</win32>
<macosx>${productName}.app</macosx>
- <linux>${productName}</linux>
</rootFolders>
</product>
</products>

View File

@ -1,13 +0,0 @@
diff --git a/application/org.openjdk.jmc.feature.core/feature.xml b/application/org.openjdk.jmc.feature.core/feature.xml
index 1eb682d..569f7e2 100644
--- a/application/org.openjdk.jmc.feature.core/feature.xml
+++ b/application/org.openjdk.jmc.feature.core/feature.xml
@@ -168,7 +168,7 @@
unpack="false"/>
<plugin
- id="com.sun.mail.jakarta.mail"
+ id="com.sun.mail.javax.mail"
download-size="0"
install-size="0"
version="0.0.0"

View File

@ -1,208 +0,0 @@
diff --git a/application/org.openjdk.jmc.console.ui/src/main/java/org/openjdk/jmc/console/ui/editor/internal/ConsoleFormPage.java b/application/org.openjdk.jmc.console.ui/src/main/java/org/openjdk/jmc/console/ui/editor/internal/ConsoleFormPage.java
index a6a2a7c..a252f9e 100644
--- a/application/org.openjdk.jmc.console.ui/src/main/java/org/openjdk/jmc/console/ui/editor/internal/ConsoleFormPage.java
+++ b/application/org.openjdk.jmc.console.ui/src/main/java/org/openjdk/jmc/console/ui/editor/internal/ConsoleFormPage.java
@@ -43,7 +43,6 @@ import org.eclipse.jface.action.IToolBarManager;
import org.eclipse.jface.dialogs.IMessageProvider;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.resource.ResourceLocator;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
@@ -54,6 +53,7 @@ import org.eclipse.ui.forms.IManagedForm;
import org.eclipse.ui.forms.IMessageManager;
import org.eclipse.ui.forms.editor.FormPage;
import org.eclipse.ui.forms.widgets.Form;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.openjdk.jmc.console.ui.ConsolePlugin;
import org.openjdk.jmc.console.ui.editor.IConsolePageContainer;
import org.openjdk.jmc.console.ui.editor.IConsolePageStateHandler;
@@ -175,7 +175,7 @@ public class ConsoleFormPage extends FormPage implements IConsolePageContainer {
String iconName = config.getAttribute(ATTRIBUTE_ICON);
if (iconName != null) {
String pluginId = config.getDeclaringExtension().getContributor().getName();
- ImageDescriptor iconDesc = ResourceLocator.imageDescriptorFromBundle(pluginId, iconName).orElse(null);
+ ImageDescriptor iconDesc = AbstractUIPlugin.imageDescriptorFromPlugin(pluginId, iconName);
if (iconDesc != null) {
icon = (Image) JFaceResources.getResources().get(iconDesc);
} else {
diff --git a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPage.java b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPage.java
index d0be24a..e3f1000 100644
--- a/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.ext.jfx/src/main/java/org/openjdk/jmc/flightrecorder/ext/jfx/JfxPage.java
@@ -38,7 +38,6 @@ import java.util.List;
import java.util.stream.Stream;
import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ResourceLocator;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.SashForm;
import org.eclipse.swt.graphics.Image;
@@ -46,6 +45,7 @@ import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.forms.widgets.Form;
import org.eclipse.ui.forms.widgets.FormToolkit;
import org.eclipse.ui.forms.widgets.Section;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.openjdk.jmc.common.IState;
import org.openjdk.jmc.common.IWritableState;
import org.openjdk.jmc.common.item.Aggregators;
@@ -98,8 +98,8 @@ public class JfxPage extends AbstractDataPage {
@Override
public ImageDescriptor getImageDescriptor(IState state) {
- return ResourceLocator.imageDescriptorFromBundle("org.openjdk.jmc.flightrecorder.ext.jfx", //$NON-NLS-1$
- "icons/pulse.png").orElse(null); //$NON-NLS-1$
+ return AbstractUIPlugin.imageDescriptorFromPlugin("org.openjdk.jmc.flightrecorder.ext.jfx", //$NON-NLS-1$
+ "icons/pulse.png"); //$NON-NLS-1$
}
@Override
diff --git a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
index a8b76b0..bb57f10 100644
--- a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
@@ -69,7 +69,6 @@ import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.action.IToolBarManager;
import org.eclipse.jface.action.Separator;
import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ResourceLocator;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.swt.SWT;
@@ -93,6 +92,7 @@ import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.part.ViewPart;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.openjdk.jmc.common.item.IItemCollection;
import org.openjdk.jmc.common.item.ItemCollectionToolkit;
import org.openjdk.jmc.common.util.StringToolkit;
@@ -490,7 +490,7 @@ public class FlameGraphView extends ViewPart implements ISelectionListener {
}
private static ImageDescriptor flameviewImageDescriptor(String iconName) {
- return ResourceLocator.imageDescriptorFromBundle(PLUGIN_ID, DIR_ICONS + iconName).orElse(null); //$NON-NLS-1$
+ return AbstractUIPlugin.imageDescriptorFromPlugin(PLUGIN_ID, DIR_ICONS + iconName); //$NON-NLS-1$
}
private static String getIconBase64(String iconName) {
diff --git a/application/org.openjdk.jmc.flightrecorder.metadata/src/main/java/org/openjdk/jmc/flightrecorder/metadata/MetadataPage.java b/application/org.openjdk.jmc.flightrecorder.metadata/src/main/java/org/openjdk/jmc/flightrecorder/metadata/MetadataPage.java
index 748cebc..019ce5e 100644
--- a/application/org.openjdk.jmc.flightrecorder.metadata/src/main/java/org/openjdk/jmc/flightrecorder/metadata/MetadataPage.java
+++ b/application/org.openjdk.jmc.flightrecorder.metadata/src/main/java/org/openjdk/jmc/flightrecorder/metadata/MetadataPage.java
@@ -39,7 +39,6 @@ import java.util.stream.Stream;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.layout.GridLayoutFactory;
import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ResourceLocator;
import org.eclipse.jface.viewers.ColumnViewerToolTipSupport;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.TreePath;
@@ -51,6 +50,7 @@ import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.forms.widgets.Form;
import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.openjdk.jmc.common.IState;
import org.openjdk.jmc.common.IWritableState;
import org.openjdk.jmc.common.item.IItemIterable;
@@ -231,7 +231,7 @@ public class MetadataPage extends AbstractDataPage {
@Override
public ImageDescriptor getImageDescriptor(IState state) {
- return ResourceLocator.imageDescriptorFromBundle(PLUGIN_ID, ICON).orElse(null);
+ return AbstractUIPlugin.imageDescriptorFromPlugin(PLUGIN_ID, ICON);
}
@Override
diff --git a/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/ApplicationPlugin.java b/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/ApplicationPlugin.java
index bcdf8b9..fff9296 100644
--- a/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/ApplicationPlugin.java
+++ b/application/org.openjdk.jmc.rcp.application/src/main/java/org/openjdk/jmc/rcp/application/ApplicationPlugin.java
@@ -39,7 +39,6 @@ import java.util.logging.Logger;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.ResourceLocator;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.openjdk.jmc.common.io.IOToolkit;
import org.openjdk.jmc.rcp.application.p2.AddRepositoriesJob;
@@ -144,6 +143,6 @@ public class ApplicationPlugin extends AbstractUIPlugin {
* @return the image descriptor
*/
public static ImageDescriptor getImageDescriptor(String path) {
- return ResourceLocator.imageDescriptorFromBundle(PLUGIN_ID, path).orElse(null);
+ return AbstractUIPlugin.imageDescriptorFromPlugin(PLUGIN_ID, path);
}
}
diff --git a/application/org.openjdk.jmc.rjmx.ui/src/main/java/org/openjdk/jmc/rjmx/ui/internal/RemoveAction.java b/application/org.openjdk.jmc.rjmx.ui/src/main/java/org/openjdk/jmc/rjmx/ui/internal/RemoveAction.java
index 6380709..4a66939 100644
--- a/application/org.openjdk.jmc.rjmx.ui/src/main/java/org/openjdk/jmc/rjmx/ui/internal/RemoveAction.java
+++ b/application/org.openjdk.jmc.rjmx.ui/src/main/java/org/openjdk/jmc/rjmx/ui/internal/RemoveAction.java
@@ -34,16 +34,16 @@ package org.openjdk.jmc.rjmx.ui.internal;
import org.eclipse.jface.action.Action;
import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ResourceLocator;
import org.eclipse.ui.forms.SectionPart;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.openjdk.jmc.ui.misc.MCSectionPart;
/**
* Action for removing a {@link SectionPart} in a {@link SectionPartManager}
*/
public class RemoveAction extends Action {
- private final static ImageDescriptor ICON = ResourceLocator.imageDescriptorFromBundle("org.eclipse.ui", //$NON-NLS-1$
- "icons/full/elcl16/close_view.gif").orElse(null); //$NON-NLS-1$
+ private final static ImageDescriptor ICON = AbstractUIPlugin.imageDescriptorFromPlugin("org.eclipse.ui", //$NON-NLS-1$
+ "icons/full/elcl16/close_view.gif"); //$NON-NLS-1$
final private SectionPartManager m_sectionPartmanager;
final private MCSectionPart m_part;
diff --git a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/CoreImages.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/CoreImages.java
index 5cd717b..d6a19a9 100644
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/CoreImages.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/CoreImages.java
@@ -35,7 +35,7 @@ package org.openjdk.jmc.ui;
import java.util.MissingResourceException;
import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ResourceLocator;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
/**
* Storage for common ImageDescriptors.
@@ -177,7 +177,7 @@ public class CoreImages {
}
private static ImageDescriptor createDescriptor(String relPath) {
- ImageDescriptor desc = ResourceLocator.imageDescriptorFromBundle(UIPlugin.PLUGIN_ID, relPath).orElse(null);
+ ImageDescriptor desc = AbstractUIPlugin.imageDescriptorFromPlugin(UIPlugin.PLUGIN_ID, relPath);
if (desc == null) {
// FIXME: Throwing an exception has the development time advantage of being very intrusive. For release time, logging might be better.
throw new MissingResourceException("Missing image '" + relPath + '\'', ImageDescriptor.class.getName(), //$NON-NLS-1$
diff --git a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/ImageDescriptorAdapterFactory.java b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/ImageDescriptorAdapterFactory.java
index de112b0..e04e796 100644
--- a/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/ImageDescriptorAdapterFactory.java
+++ b/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/ImageDescriptorAdapterFactory.java
@@ -34,7 +34,8 @@ package org.openjdk.jmc.ui.misc;
import org.eclipse.core.runtime.IAdapterFactory;
import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ResourceLocator;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+
import org.openjdk.jmc.ui.common.resource.IImageResource;
import org.openjdk.jmc.ui.common.resource.Resource;
import org.openjdk.jmc.ui.common.util.AdapterUtil;
@@ -49,8 +50,7 @@ public class ImageDescriptorAdapterFactory implements IAdapterFactory {
if (imageResource != null) {
Resource r = imageResource.getImageResource();
if (r != null) {
- return adapterType.cast(ResourceLocator
- .imageDescriptorFromBundle(r.getPluginId(), r.getResourcePath()).orElse(null));
+ return adapterType.cast(AbstractUIPlugin.imageDescriptorFromPlugin(r.getPluginId(), r.getResourcePath()));
}
}
IGraphical g = AdapterUtil.getAdapter(adaptableObject, IGraphical.class);

View File

@ -1,22 +0,0 @@
diff --git a/application/org.openjdk.jmc.feature.core/feature.xml b/application/org.openjdk.jmc.feature.core/feature.xml
index b53c5e5..1eb682d 100644
--- a/application/org.openjdk.jmc.feature.core/feature.xml
+++ b/application/org.openjdk.jmc.feature.core/feature.xml
@@ -62,17 +62,6 @@
<import plugin="org.eclipse.e4.core.contexts"/>
</requires>
- <plugin
- id="com.make.chromium.cef.win32.win32.x86_64"
- os="win32"
- ws="win32"
- arch="x86_64"
- download-size="0"
- install-size="0"
- version="0.0.0"
- fragment="true"
- unpack="false"/>
-
<plugin
id="org.openjdk.jmc.attach"
download-size="0"

View File

@ -1,21 +0,0 @@
diff --git a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
index d356c2e..41dff7a 100644
--- a/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
+++ b/application/org.openjdk.jmc.flightrecorder.graphview/src/main/java/org/openjdk/jmc/flightrecorder/graphview/views/GraphView.java
@@ -38,6 +38,7 @@ import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.text.MessageFormat;
+import java.util.Arrays;
import java.util.Base64;
import java.util.List;
import java.util.concurrent.ExecutorService;
@@ -172,7 +173,7 @@ public class GraphView extends ViewPart implements ISelectionListener {
private class NodeThresholdSelection extends Action implements IMenuCreator {
private Menu menu;
- private final List<Pair<String, Integer>> items = List.of(new Pair<>("100", 100), new Pair<>("500", 500),
+ private final List<Pair<String, Integer>> items = Arrays.asList(new Pair<>("100", 100), new Pair<>("500", 500),
new Pair<>("1000", 1000));
NodeThresholdSelection() {

View File

@ -1,16 +0,0 @@
diff --git a/application/pom.xml b/application/pom.xml
index 6b92b98..34b9077 100644
--- a/application/pom.xml
+++ b/application/pom.xml
@@ -173,11 +173,6 @@
<artifactId>flightrecorder.test</artifactId>
<version>8.0.1-SNAPSHOT</version>
</dependency>
- <dependency>
- <groupId>org.jacoco</groupId>
- <artifactId>jacoco-maven-plugin</artifactId>
- <version>0.8.3</version>
- </dependency>
</dependencies>
<build>
<plugins>

View File

@ -1,185 +0,0 @@
diff --git a/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml b/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
index 89cc5e9a..d61b28c6 100644
--- a/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/pom.xml
@@ -42,94 +42,4 @@
</parent>
<artifactId>org.openjdk.jmc.flightrecorder.flameview</artifactId>
<packaging>eclipse-plugin</packaging>
-
- <properties>
- <download.maven.plugin.version>1.6.0</download.maven.plugin.version>
- <download-maven-plugin.phase>process-resources</download-maven-plugin.phase>
- <download-maven-plugin.output>${project.basedir}/src/main/resources/jslibs</download-maven-plugin.output>
- <spotless.config.path>${basedir}/../../configuration/ide/eclipse/formatting/formatting.xml</spotless.config.path>
- <spotless.config.path.js>${basedir}/../../configuration/ide/eclipse/formatting/formattingjs.xml</spotless.config.path.js>
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>com.googlecode.maven-download-plugin</groupId>
- <artifactId>download-maven-plugin</artifactId>
- <version>${download.maven.plugin.version}</version>
- <executions>
- <execution>
- <id>d3-flamegraph-css</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.css</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-v6-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://d3js.org/d3.v6.min.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-flamegraph-tooltip-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph-tooltip.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>d3-flamegraph-js</id>
- <phase>${download-maven-plugin.phase}</phase>
- <goals>
- <goal>wget</goal>
- </goals>
- <configuration>
- <url>https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.js</url>
- <unpack>false</unpack>
- <outputDirectory>${download-maven-plugin.output}</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <!-- The formatter currently dislikes the javascript for some reason, but this is how to enable JavaScript formatting
- <plugin>
- <groupId>com.diffplug.spotless</groupId>
- <artifactId>spotless-maven-plugin</artifactId>
- <version>${spotless.version}</version>
- <configuration>
- <formats>
- <format>
- <includes>
- <include>src/main/js/*.js</include>
- </includes>
- <eclipseWtp>
- <type>JS</type>
- <files>
- <file>${spotless.config.path.js}</file>
- </files>
- </eclipseWtp>
- </format>
- </formats>
- </configuration>
- </plugin>
- -->
- </plugins>
- </build>
</project>
diff --git a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
index dc43ba8c..a8b76b0c 100644
--- a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/java/org/openjdk/jmc/flightrecorder/flameview/views/FlameGraphView.java
@@ -61,7 +61,6 @@ import java.util.concurrent.Executors;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level;
-import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.eclipse.jface.action.Action;
@@ -120,27 +119,17 @@ public class FlameGraphView extends ViewPart implements ISelectionListener {
private static final String TOOLTIP_DESCRIPTION = getFlameviewMessage(FLAMEVIEW_SELECT_HTML_TOOLTIP_DESCRIPTION);
private static final String HTML_PAGE;
static {
- // from: https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.css
- String cssD3Flamegraph = "jslibs/d3-flamegraph.css";
- // from: https://d3js.org/d3.v6.min.js
- String jsD3V6 = "jslibs/d3.v6.min.js";
- // from: https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph-tooltip.js
- String jsD3Tip = "jslibs/d3-flamegraph-tooltip.js";
- // from: https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.js
- String jsD3FlameGraph = "jslibs/d3-flamegraph.js";
- // jmc flameview coloring, tooltip and other functions
String jsFlameviewName = "flameview.js";
String cssFlameview = "flameview.css";
- String jsD3 = loadLibraries(jsD3V6, jsD3FlameGraph, jsD3Tip);
- String styleheets = loadLibraries(cssD3Flamegraph, cssFlameview);
+ String styleheets = fileContent(cssFlameview);
String jsFlameviewColoring = fileContent(jsFlameviewName);
String magnifierIcon = getIconBase64(ImageConstants.ICON_MAGNIFIER);
// formatter arguments for the template: %1 - CSSs stylesheets,
- // %2 - Search Icon Base64, %3 - 3rd party scripts, %4 - Flameview Coloring,
- HTML_PAGE = String.format(fileContent("page.template"), styleheets, magnifierIcon, jsD3, jsFlameviewColoring);
+ // %2 - Search Icon Base64, %3 - Flameview Coloring,
+ HTML_PAGE = String.format(fileContent("page.template"), styleheets, magnifierIcon, jsFlameviewColoring);
}
private static final int MODEL_EXECUTOR_THREADS_NUMBER = 3;
@@ -490,14 +479,6 @@ public class FlameGraphView extends ViewPart implements ISelectionListener {
}
}
- private static String loadLibraries(String ... libs) {
- if (libs == null || libs.length == 0) {
- return "";
- } else {
- return Stream.of(libs).map(FlameGraphView::fileContent).collect(Collectors.joining("\n"));
- }
- }
-
private static String fileContent(String fileName) {
try {
return StringToolkit.readString(FlameGraphView.class.getClassLoader().getResourceAsStream(fileName));
diff --git a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template
index 67bc3c75..a01571d9 100644
--- a/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template
+++ b/application/org.openjdk.jmc.flightrecorder.flameview/src/main/resources/page.template
@@ -3,6 +3,7 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.css"></link>
<style type="text/css">%1$s</style>
<style type="text/css" media="print">
body {
@@ -21,12 +22,12 @@
<img src="data:image/png;base64, %2$s" width="12" height="12">
</div>
<div id="chart"></div>
+ <script type="text/javascript" src="https://d3js.org/d3.v6.min.js"></script>
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph.js"></script>
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/d3-flame-graph@4.0.6/dist/d3-flamegraph-tooltip.js"></script>
<script type="text/javascript">
%3$s
</script>
- <script type="text/javascript">
- %4$s
- </script>
<script type="text/javascript">
const minSearchTextSize = 3;

View File

@ -1,313 +0,0 @@
# Version
%global major 8
%global minor 0
%global patchlevel 1
# Revision
%global revnum 4
# set to 1 for snapshots, 0 for release
%global usesnapshot 0
# SNAPSHOT version
%global revhash 699a121bd449fe8a9350221282bd3f809691a766
%global revdate 20210623
%global tarball_name jmc-%{revhash}
# Install jmc in /usr/lib/jmc (arch-specific and multilib exempt)
%global _jmcdir %{_prefix}/lib/%{name}
%global debug_package %{nil}
%if %{usesnapshot}
%global releasestr %{revnum}.%{revdate}
%else
%global releasestr %{revnum}
%endif
%ifarch %{ix86}
%global eclipse_arch x86
%endif
%ifarch %{arm}
%global eclipse_arch arm
%endif
%ifarch s390x x86_64 aarch64 ppc64le
%global eclipse_arch %{_arch}
%endif
# Don't export Eclipse libraries
%global __provides_exclude_from ^%{_jmcdir}/plugins/org.eclipse.*$
%global __requires_exclude_from ^%{_jmcdir}/plugins/org.eclipse.*$
%global __requires_exclude ^osgi\\((javax|org\\.apache|org\\.eclipse|org\\.sat4j).*$
%global __provides_exclude ^osgi\\((com|javax|org\\.apache|org\\.glassfish|org\\.kxml2|org\\.sat4j|org\\.tukaani|org\\.w3c|org\\.xmlpull).*$
Name: jmc
Version: %{major}.%{minor}.%{patchlevel}
Release: %{releasestr}%{?dist}
Summary: JDK Mission Control is a profiling and diagnostics tool
License: UPL
URL: http://openjdk.java.net/projects/jmc/
Source0: https://github.com/openjdk/jmc/archive/%{revhash}.tar.gz
Source1: %{name}.desktop
Source2: %{name}.1
Source3: symlink_libs.sh
# Remove optional twitter related functionality
Patch0: 0-remove-twitter.patch
# Remove maven build profiles that won't be used in local build
Patch1: 1-remove-profiles.patch
# Remove localization files that currently cannot be supported
# due to a packaging issue for Eclipse language packs
# eclipse-nls-ja and eclipse-nls-zh
# They currently provide multiple archs within the same package
# and the local build system cannot fulfill dependencies from them
Patch2: 2-remove-localization.patch
# Remove unused module org.openjdk.jmc.ide.jdt
Patch3: 3-remove-ide-jdt.patch
# Remove unused remote repository definition
Patch4: 4-remove-buchen-repo.patch
# Add dependency on org. hamcrest-core to provide class used in unit tests
Patch5: 5-add-hamcrest.patch
# Remove windows and mac arches
Patch6: 6-remove-arch.patch
# Remove unnecessary dependency
Patch7: 7-remove-jacoco-dep.patch
# Revert downloading of flameview assets from the web
Patch8: 8-revert-flameview.patch
# Drop JFR flags (temporary)
Patch9: 9-update-flags.patch
# Revert the adjusted lz4-java name as seen in jmc
Patch10: 10-revert-lz4-java-name-override.patch
# Patch pom.xml Use to tycho version 2.1
Patch11: 11-tycho.patch
# Revert downloading of graphview assets from the web
Patch12: 12-revert-graphview.patch
# Simplify the path to the jmc product
Patch13: 13-revert-6852.patch
# Update javamail dependency names
Patch14: 14-fix-javamail.patch
# Revert usage of ResourceLocator as it isn't available in Eclipse 4.12
Patch15: 15-revert-resourcelocator.patch
# Remove Chromium (currently Windows-only) from the plugin list
Patch16: 16-remove-chromium.patch
# Revert usage of List.of in GraphView
Patch17: 17-revert-list-of.patch
ExclusiveArch: x86_64
BuildRequires: desktop-file-utils
BuildRequires: java-11-openjdk
BuildRequires: libappstream-glib
BuildRequires: maven-local
BuildRequires: eclipse-pde
BuildRequires: tycho
BuildRequires: HdrHistogram >= 2.1.11
BuildRequires: javamail
BuildRequires: mvn(org.commonjava.maven.plugins:directory-maven-plugin)
BuildRequires: mvn(com.sun.activation:jakarta.activation)
BuildRequires: mvn(org.openjdk.jmc:common)
BuildRequires: osgi(org.openjdk.jmc.flightrecorder.test)
BuildRequires: osgi(javax.annotation-api)
Requires: java-openjdk >= 1:1.8
Requires: lz4-java
Requires: osgi(com.sun.activation.jakarta.activation)
Requires: osgi(org.openjdk.jmc.common)
Requires: osgi(org.openjdk.jmc.flightrecorder)
Requires: osgi(org.openjdk.jmc.flightrecorder.rules)
Requires: osgi(org.openjdk.jmc.flightrecorder.rules.jdk)
Requires: osgi(org.owasp.encoder)
Requires: osgi(org.hdrhistogram.HdrHistogram) >= 2.1.11
Requires: gtk3
Requires: webkitgtk4
Requires: libGLU.so.1()(64bit)
%description
JDK Mission Control is a powerful profiler for HotSpot JVMs and has an
advanced set of tools that enables efficient and detailed analysis of the
extensive data collected by JDK Flight Recorder. The tool chain enables
developers and administrators to collect and analyze data from Java
applications running locally or deployed in production environments.
%prep
%setup -q -n %{tarball_name}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
%pom_disable_module releng
%pom_disable_module l10n application
%pom_disable_module org.openjdk.jmc.updatesite.ide application
%pom_disable_module org.openjdk.jmc.updatesite.rcp application
# disable tests that require the use of jfr
%pom_disable_module org.openjdk.jmc.rjmx.services.jfr.test application/tests
%pom_disable_module org.openjdk.jmc.flightrecorder.controlpanel.ui.test application/tests
%pom_remove_plugin com.github.spotbugs:spotbugs-maven-plugin
%pom_remove_plugin :maven-enforcer-plugin
%pom_remove_plugin :jacoco-maven-plugin application/tests
%pom_remove_plugin :jacoco-maven-plugin application/uitests
%pom_disable_module coverage application
# Info.plist are mac files and we only build for Linux
%pom_remove_plugin name.abuchen:fix-info-plist-maven-plugin application/org.openjdk.jmc.rcp.product
%pom_remove_plugin org.codehaus.mojo:buildnumber-maven-plugin
%pom_remove_plugin org.apache.maven.plugins:maven-deploy-plugin
TYCHO_ENV="<environment><os>linux</os><ws>gtk</ws><arch>%{eclipse_arch}</arch></environment>"
%pom_xpath_set "pom:configuration/pom:environments" "$TYCHO_ENV"
%build
# some tests require large heap and fail with OOM
# depending on the builder resources
%mvn_build -j -- -Dmaven.test.failure.ignore=true -DbuildId=rhel -DbuildNumber=%{revhash} -Dbuild.date=%{revdate}
%install
# not using mvn_install macro because it installs JMC as an Eclipse plugin
# we want to install JMC as an RCP application
# change jmc.ini to use system java (remove -vm option line)
sed -i '/^-vm$/d' %{_builddir}/%{tarball_name}/target/products/org.openjdk.jmc/%{_os}/gtk/%{eclipse_arch}/%{name}.ini
sed -i '/^..\/..\/bin\/$/d' %{_builddir}/%{tarball_name}/target/products/org.openjdk.jmc/%{_os}/gtk/%{eclipse_arch}/%{name}.ini
# add IgnoreUnrecognizedVMOptions flag to allow running on OpenJDK 8 without 'Unrecognized VM option' error
sed -i '/^-vmargs$/a -XX:+IgnoreUnrecognizedVMOptions' %{_builddir}/%{tarball_name}/target/products/org.openjdk.jmc/%{_os}/gtk/%{eclipse_arch}/%{name}.ini
# move contents of target/products/org.openjdk.jmc/${_os}/gtk/%{eclipse_arch}/ to /usr/lib/jmc/
install -d -m 755 %{buildroot}%{_jmcdir}
cp -p -r %{_builddir}/%{tarball_name}/target/products/org.openjdk.jmc/%{_os}/gtk/%{eclipse_arch}/* %{buildroot}%{_jmcdir}/
# move jmc.ini to /etc/jmc.ini
install -d -m 755 %{buildroot}%{_sysconfdir}
mv %{buildroot}%{_jmcdir}/%{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini
ln -s %{_sysconfdir}/%{name}.ini %{buildroot}%{_jmcdir}/%{name}.ini
# create symlink to jmc in /usr/bin/
install -d -m 755 %{buildroot}%{_bindir}
ln -s %{_jmcdir}/%{name} %{buildroot}%{_bindir}/%{name}
# replace jars with symlinks to installed libraries
bash %{SOURCE3} %{buildroot}%{_jmcdir}/plugins %{_javadir} %{_jnidir} %{_javadir_maven} %{_jnidir_maven} %{_javadir}/jmc-core
# create application launcher in desktop menu
install -d -m 755 %{buildroot}%{_datadir}/pixmaps
mv %{buildroot}%{_jmcdir}/icon.xpm %{buildroot}%{_datadir}/pixmaps/%{name}.xpm
chmod 644 %{buildroot}%{_datadir}/pixmaps/%{name}.xpm
desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE1}
# install pom file
install -d -m 755 %{buildroot}%{_datadir}/maven-poms/%{name}
install -p -m 644 %{_builddir}/%{tarball_name}/pom.xml %{buildroot}%{_datadir}/maven-poms/%{name}/%{name}.pom
# install manpage and insert location of config file
install -d -m 755 %{buildroot}%{_mandir}/man1
install -p -m 644 %{SOURCE2} %{buildroot}%{_mandir}/man1/%{name}.1
sed -i "/.SH FILES/a .I %{_sysconfdir}/%{name}.ini" %{buildroot}%{_mandir}/man1/%{name}.1
%files
%license license/LICENSE.txt
%license license/THIRDPARTYREADME.txt
%doc README.md
%config(noreplace) %{_sysconfdir}/%{name}.ini
%{_jmcdir}
%{_mandir}/man1/%{name}.1*
%{_bindir}/%{name}
%{_datadir}/maven-poms/%{name}
%{_datadir}/pixmaps/%{name}.xpm
%{_datadir}/applications/%{name}.desktop
%changelog
* Tue Oct 05 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.1-4
- Rebuild with updated dependencies
* Thu Aug 26 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.1-3
- Bump version to build with updated tycho
* Wed Aug 19 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.1-2
- Re-set the buildId, buildNumber, and build.date during maven build
* Tue Aug 10 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-1
- Update to jmc 8.0.1-ga
* Tue Aug 10 2021 Alex Macdonald <almacdon@redhat.com> - 8.1.0-1
- Update to jmc-ga tagged commit d0f89f0
* Wed Feb 24 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-8
- Set the buildId, buildNumber, and build.date during maven build
* Fri Feb 19 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-7
- Fix incorrect macro for name
* Fri Feb 19 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-6
- Revert previous JAVA_HOME export
- Add patch to remove use of List.of in GraphView
* Fri Feb 19 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-5
- Export JAVA_HOME to be openjdk 11
* Thu Feb 18 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-4
- Revert usage of ResourceLocator to be eclipse 4.12 compliant
* Wed Feb 17 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-3
- Revert removal of fix-javamail patch
* Wed Feb 17 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-2
- Revert osgi reference from jakarta.annotation to javax.annotation
* Fri Feb 12 2021 Alex Macdonald <almacdon@redhat.com> - 8.0.0-1
- Update to jmc8 branch commit 8ab40bf
* Thu Apr 23 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-5
- Update jacoco removal patch
* Thu Apr 23 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-4
- Update to latest commit e67446b5fc9d
* Fri Apr 17 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-3
- include jmc-core in the directories to search in symlink_libs.sh
* Fri Apr 17 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-2
- Remove jacoco from the pom and disable coverage
* Thu Apr 16 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-1
- Updated to version 7.1.1
* Thu Nov 14 2019 Jie Kang <jkang@redhat.com> - 7.0.0-4
- Fix requires
* Wed Nov 13 2019 Jie Kang <jkang@redhat.com> - 7.0.0-3
- Fix exclusions
* Wed Nov 13 2019 Jie Kang <jkang@redhat.com> - 7.0.0-2
- Update require and provide exclusions
* Tue Mar 12 2019 Jie Kang <jkang@redhat.com> - 7.0.0-1
- Initial package

6
gating.yaml Normal file
View File

@ -0,0 +1,6 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

View File

@ -5,7 +5,7 @@ jmc \- Java profiling and diagnostics tool
.B jmc
[\fB\-vm\fR \fIJVM\fR]
.SH DESCRIPTION
JDK Mission Control is a powerful profiler for HotSpot JVMs and has an
JDK Mission Control is a powerful profiler for HotSpot JVMs and has an
advanced set of tools that enables efficient and detailed analysis of the
extensive data collected by JDK Flight Recorder.
The tool chain enables developers and administrators to collect and analyze data
@ -21,4 +21,4 @@ Startup options are specified here.
The -vm option can be set here as well to avoid specifying at startup.
Options specified at startup will override values in this file.
.SH BUGS
Report bugs to JMC mailing list: <jmc-dev at openjdk dot java dot net>
Report bugs to JMC mailing list: <jmc-dev at openjdk dot java dot net>

20
jmc.appdata.xml Normal file
View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop">
<id>jmc.desktop</id>
<metadata_license>FSAP</metadata_license>
<project_license>UPL or BSD</project_license>
<name>JDK Mission Control</name>
<summary>A Profiling and Diagnostics Tool for the Hotspot JVM</summary>
<description>
<p>
JDK Mission Control is a powerful profiler for HotSpot JVMs and has an
advanced set of tools that enables efficient and detailed analysis of the
extensive data collected by JDK Flight Recorder. The tool chain enables
developers and administrators to collect and analyze data from Java
applications running locally or deployed in production environments.
</p>
</description>
<url type="homepage">http://openjdk.java.net/projects/jmc/</url>
<launchable type="desktop-id">jmc.desktop</launchable>
<developer_name>The OpenJDK Community</developer_name>
</component>

View File

@ -5,4 +5,4 @@ Exec=jmc
Icon=jmc
Terminal=false
Type=Application
Categories=Development;Java;Profiling;
Categories=Development;Java;Profiling;

689
jmc.spec Normal file
View File

@ -0,0 +1,689 @@
# Version
%global major 8
%global minor 2
%global patchlevel 0
# Revision
%global revnum 14
# set to 1 for snapshots, 0 for release
%global usesnapshot 1
# SNAPSHOT version
%global revhash 7f42e4a10291d7e9316711edd81a183951cdae57
%global revdate 20220203
%global tarball_name %{major}.%{minor}.%{patchlevel}-ga.tar.gz
# Install jmc in /usr/lib/jmc (arch-specific and multilib exempt)
%global _jmcdir %{_prefix}/lib/%{name}
%global jmc_dir_name jmc-%{major}.%{minor}.%{patchlevel}-ga
%global debug_package %{nil}
%if %{usesnapshot}
%global releasestr %{revnum}.%{revdate}
%global repositorystr repository-%{major}.%{minor}.%{patchlevel}-%{revdate}.tar.gz
%else
%global releasestr %{revnum}
%global repositorystr repository-%{major}.%{minor}.%{patchlevel}.tar.gz
%endif
%ifarch %{ix86}
%global eclipse_arch x86
%endif
%ifarch %{arm}
%global eclipse_arch arm
%endif
%ifarch s390x x86_64 aarch64 ppc64le
%global eclipse_arch %{_arch}
%endif
# Don't export Eclipse libraries
%global __provides_exclude_from ^%{_jmcdir}/plugins/org.eclipse.*$
%global __requires_exclude_from ^%{_jmcdir}/plugins/org.eclipse.*$
%global __requires_exclude ^osgi\\((javax|org\\.apache|org\\.eclipse|org\\.sat4j|org\\.w3c).*$
%global __provides_exclude ^osgi\\((com|javax|org\\.apache|org\\.glassfish|org\\.kxml2|org\\.sat4j|org\\.tukaani|org\\.w3c|org\\.xmlpull).*$
Name: jmc
Version: %{major}.%{minor}.%{patchlevel}
Release: %{releasestr}%{?dist}.2
Summary: JDK Mission Control is a profiling and diagnostics tool
# jmc source README.md states: The Mission Control source code is made
# available under the Universal Permissive License (UPL), Version 1.0 or a
# BSD-style license, alternatively. The full open source license text is
# available at license/LICENSE.txt in the JMC project.
License: UPL or BSD
URL: http://openjdk.java.net/projects/jmc/
Source0: %{tarball_name}
Source1: %{repositorystr}
Source2: %{name}.desktop
Source3: %{name}.1
Source4: symlink_libs.sh
Source5: %{name}.appdata.xml
# The JavaScript visualizations fetch the required JS files at build time and
# are loaded into the HTML template by the corresponding Java class. This patch
# instead inlines the scripts so there's no build-time fetching.
Patch0: 0-inline-javascript-into-templates.patch
# Remove Windows and Mac environments
Patch1: 1-remove-non-linux-environments.patch
# Now that Fedora & related build systems are using JDK 17 by default, this patch
# prevents the running of the core flightrecorder.writer tests which fail in JDK 17.
# It fails due to an incapability with mockito, and it's possible that this will be
# addressed in a future commit to JMC, but is not a priority at the moment.
# For the time being, skip these tests, and be mindful when generating the local Maven
# repo that this patch might need to be manually applied as well in order for the
# core artifacts to install properly.
# Note: this can be fixed upstream by updating mockito to at least v3.10.0
Patch2: 2-skip-writer-tests.patch
# Dependencies are bundled into a tar.gz and passed as a local maven repository for the build
ExclusiveArch: x86_64
BuildRequires: desktop-file-utils
BuildRequires: java-11-openjdk
BuildRequires: maven-local
Requires: gtk3
Requires: java-11-openjdk
Requires: libGLU.so.1()(64bit)
Requires: webkitgtk4
Provides: bundled(osgi(com.ibm.icu)) = 67.1.0
Provides: bundled(osgi(com.sun.activation.jakarta.activation)) = 2.0.1
Provides: bundled(osgi(com.sun.el)) = 2.2.0
Provides: bundled(osgi(com.sun.jna)) = 5.8.0
Provides: bundled(osgi(com.sun.jna.platform)) = 5.8.0
Provides: bundled(osgi(com.sun.mail.jakarta.mail)) = 2.0.1
Provides: bundled(osgi(jakarta.servlet-api)) = 4.0.0
Provides: bundled(osgi(javax.annotation)) = 1.3.5
Provides: bundled(osgi(javax.el)) = 2.2.0
Provides: bundled(osgi(javax.inject)) = 1.0.0
Provides: bundled(osgi(javax.servlet.jsp)) = 2.2.0
Provides: bundled(osgi(lz4-java)) = 1.8.0
Provides: bundled(osgi(org.apache.aries.spifly.dynamic.bundle)) = 1.3.4
Provides: bundled(osgi(org.apache.batik.constants)) = 1.14.0
Provides: bundled(osgi(org.apache.batik.css)) = 1.14.0
Provides: bundled(osgi(org.apache.batik.i18n)) = 1.14.0
Provides: bundled(osgi(org.apache.batik.util)) = 1.14.0
Provides: bundled(osgi(org.apache.commons.codec)) = 1.14.0
Provides: bundled(osgi(org.apache.commons.io)) = 2.8.0
Provides: bundled(osgi(org.apache.commons.jxpath)) = 1.3.0
Provides: bundled(osgi(org.apache.commons.logging)) = 1.2.0
Provides: bundled(osgi(org.apache.felix.gogo.command)) = 1.1.2
Provides: bundled(osgi(org.apache.felix.gogo.runtime)) = 1.1.4
Provides: bundled(osgi(org.apache.felix.gogo.shell)) = 1.1.4
Provides: bundled(osgi(org.apache.felix.scr)) = 2.1.24
Provides: bundled(osgi(org.apache.httpcomponents.httpclient)) = 4.5.13
Provides: bundled(osgi(org.apache.httpcomponents.httpcore)) = 4.4.14
Provides: bundled(osgi(org.apache.jasper.glassfish)) = 2.2.2
Provides: bundled(osgi(org.apache.lucene.analyzers-common)) = 8.4.1
Provides: bundled(osgi(org.apache.lucene.analyzers-smartcn)) = 8.4.1
Provides: bundled(osgi(org.apache.lucene.core)) = 8.4.1
Provides: bundled(osgi(org.apache.xmlgraphics)) = 2.6.0
Provides: bundled(osgi(org.apiguardian)) = 1.1.0
Provides: bundled(osgi(org.bouncycastle.bcpg)) = 1.69.0
Provides: bundled(osgi(org.bouncycastle.bcprov)) = 1.69.0
Provides: bundled(osgi(org.eclipse.core.commands.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.commands.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.contenttype)) = 3.8.0
Provides: bundled(osgi(org.eclipse.core.contenttype.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.contenttype.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.databinding.beans)) = 1.8.0
Provides: bundled(osgi(org.eclipse.core.databinding.beans.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.databinding.beans.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.databinding.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.databinding.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.databinding.observable)) = 1.11.0
Provides: bundled(osgi(org.eclipse.core.databinding.observable.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.databinding.observable.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.databinding.property)) = 1.9.0
Provides: bundled(osgi(org.eclipse.core.databinding.property.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.databinding.property.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.expressions)) = 3.8.0
Provides: bundled(osgi(org.eclipse.core.expressions.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.expressions.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.filesystem.linux.x86_64.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.filesystem.linux.x86_64.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.filesystem.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.filesystem.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.jobs)) = 3.12.0
Provides: bundled(osgi(org.eclipse.core.jobs.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.jobs.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.net.linux.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.net.linux.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.net.linux.x86_64.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.net.linux.x86_64.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.net.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.net.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.resources.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.resources.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.runtime)) = 3.23.0
Provides: bundled(osgi(org.eclipse.core.runtime.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.runtime.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.variables.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.core.variables.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.debug.core.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.debug.core.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.commands)) = 1.0.0
Provides: bundled(osgi(org.eclipse.e4.core.commands.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.commands.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.contexts)) = 1.9.0
Provides: bundled(osgi(org.eclipse.e4.core.contexts.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.contexts.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.di)) = 1.8.0
Provides: bundled(osgi(org.eclipse.e4.core.di.annotations)) = 1.7.0
Provides: bundled(osgi(org.eclipse.e4.core.di.annotations.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.di.annotations.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.di.extensions)) = 0.17.0
Provides: bundled(osgi(org.eclipse.e4.core.di.extensions.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.di.extensions.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.di.extensions.supplier.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.di.extensions.supplier.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.di.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.di.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.services)) = 2.3.0
Provides: bundled(osgi(org.eclipse.e4.core.services.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.core.services.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.emf.xpath)) = 0.3.0
Provides: bundled(osgi(org.eclipse.e4.emf.xpath.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.emf.xpath.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.bindings.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.bindings.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.css.core.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.css.core.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.css.swt.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.css.swt.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.css.swt.theme)) = 0.13.0
Provides: bundled(osgi(org.eclipse.e4.ui.css.swt.theme.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.css.swt.theme.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.di)) = 1.4.0
Provides: bundled(osgi(org.eclipse.e4.ui.dialogs)) = 1.3.0
Provides: bundled(osgi(org.eclipse.e4.ui.dialogs.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.dialogs.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.di.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.di.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.model.workbench)) = 2.2.0
Provides: bundled(osgi(org.eclipse.e4.ui.model.workbench.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.model.workbench.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.services)) = 1.5.0
Provides: bundled(osgi(org.eclipse.e4.ui.services.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.services.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.swt.gtk.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.swt.gtk.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.widgets)) = 1.3.0
Provides: bundled(osgi(org.eclipse.e4.ui.widgets.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.widgets.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench)) = 1.13.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench3)) = 0.16.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench3.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench3.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench.addons.swt.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench.addons.swt.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench.renderers.swt.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench.renderers.swt.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench.swt.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.e4.ui.workbench.swt.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.emf.common)) = 2.23.0
Provides: bundled(osgi(org.eclipse.emf.ecore)) = 2.25.0
Provides: bundled(osgi(org.eclipse.emf.ecore.change)) = 2.14.0
Provides: bundled(osgi(org.eclipse.emf.ecore.xmi)) = 2.16.0
Provides: bundled(osgi(org.eclipse.equinox.app)) = 1.6.0
Provides: bundled(osgi(org.eclipse.equinox.app.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.app.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.bidi)) = 1.4.0
Provides: bundled(osgi(org.eclipse.equinox.bidi.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.bidi.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.common)) = 3.15.0
Provides: bundled(osgi(org.eclipse.equinox.common.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.common.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.concurrent)) = 1.2.0
Provides: bundled(osgi(org.eclipse.equinox.concurrent.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.concurrent.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.console.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.console.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.event)) = 1.6.0
Provides: bundled(osgi(org.eclipse.equinox.event.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.event.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.frameworkadmin)) = 2.2.0
Provides: bundled(osgi(org.eclipse.equinox.frameworkadmin.equinox.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.frameworkadmin.equinox.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.frameworkadmin.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.frameworkadmin.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.http.jetty)) = 3.8.0
Provides: bundled(osgi(org.eclipse.equinox.http.jetty.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.http.jetty.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.http.registry)) = 1.3.0
Provides: bundled(osgi(org.eclipse.equinox.http.registry.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.http.registry.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.http.servlet.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.http.servlet.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.jsp.jasper.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.jsp.jasper.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.jsp.jasper.registry)) = 1.2.0
Provides: bundled(osgi(org.eclipse.equinox.jsp.jasper.registry.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.jsp.jasper.registry.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.launcher.gtk.linux.x86_64.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.launcher.gtk.linux.x86_64.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.launcher.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.launcher.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.artifact.repository.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.artifact.repository.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.console)) = 1.2.0
Provides: bundled(osgi(org.eclipse.equinox.p2.console.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.console.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.core)) = 2.8.0
Provides: bundled(osgi(org.eclipse.equinox.p2.core.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.core.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.director.app)) = 1.2.0
Provides: bundled(osgi(org.eclipse.equinox.p2.director.app.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.director.app.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.director.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.director.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.directorywatcher)) = 1.3.0
Provides: bundled(osgi(org.eclipse.equinox.p2.directorywatcher.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.directorywatcher.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.engine.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.engine.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.extensionlocation)) = 1.4.0
Provides: bundled(osgi(org.eclipse.equinox.p2.extensionlocation.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.extensionlocation.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.garbagecollector)) = 1.2.0
Provides: bundled(osgi(org.eclipse.equinox.p2.garbagecollector.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.garbagecollector.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.jarprocessor)) = 1.2.0
Provides: bundled(osgi(org.eclipse.equinox.p2.jarprocessor.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.jarprocessor.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.metadata.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.metadata.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.metadata.repository)) = 1.4.0
Provides: bundled(osgi(org.eclipse.equinox.p2.metadata.repository.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.metadata.repository.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.operations)) = 2.6.0
Provides: bundled(osgi(org.eclipse.equinox.p2.operations.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.operations.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.publisher.eclipse)) = 1.4.1
Provides: bundled(osgi(org.eclipse.equinox.p2.publisher.eclipse.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.publisher.eclipse.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.publisher.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.publisher.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.reconciler.dropins)) = 1.4.0
Provides: bundled(osgi(org.eclipse.equinox.p2.reconciler.dropins.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.reconciler.dropins.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.repository.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.repository.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.touchpoint.eclipse.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.touchpoint.eclipse.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.touchpoint.natives.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.touchpoint.natives.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.transport.ecf.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.transport.ecf.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.ui.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.ui.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.ui.sdk)) = 1.2.1
Provides: bundled(osgi(org.eclipse.equinox.p2.ui.sdk.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.ui.sdk.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.ui.sdk.scheduler.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.ui.sdk.scheduler.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.updatechecker)) = 1.3.0
Provides: bundled(osgi(org.eclipse.equinox.p2.updatechecker.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.p2.updatechecker.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.preferences)) = 3.9.0
Provides: bundled(osgi(org.eclipse.equinox.preferences.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.preferences.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.registry)) = 3.11.0
Provides: bundled(osgi(org.eclipse.equinox.registry.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.registry.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.security.linux.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.security.linux.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.security.linux.x86_64.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.security.linux.x86_64.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.security.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.security.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.security.ui)) = 1.3.0
Provides: bundled(osgi(org.eclipse.equinox.security.ui.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.security.ui.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.simpleconfigurator)) = 1.4.0
Provides: bundled(osgi(org.eclipse.equinox.simpleconfigurator.manipulator)) = 2.2.0
Provides: bundled(osgi(org.eclipse.equinox.simpleconfigurator.manipulator.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.simpleconfigurator.manipulator.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.simpleconfigurator.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.equinox.simpleconfigurator.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.help.base.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.help.base.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.help.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.help.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.help.ui.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.help.ui.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.help.webapp.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.help.webapp.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.jetty.http)) = 10.0.6
Provides: bundled(osgi(org.eclipse.jetty.http)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.io)) = 10.0.6
Provides: bundled(osgi(org.eclipse.jetty.io)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.security)) = 10.0.6
Provides: bundled(osgi(org.eclipse.jetty.security)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.server)) = 10.0.6
Provides: bundled(osgi(org.eclipse.jetty.server)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.servlet)) = 10.0.6
Provides: bundled(osgi(org.eclipse.jetty.servlet)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.util)) = 10.0.6
Provides: bundled(osgi(org.eclipse.jetty.util)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.util.ajax)) = 10.0.6
Provides: bundled(osgi(org.eclipse.jetty.webapp)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.websocket.api)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.websocket.common)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.websocket.core.common)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.websocket.core.server)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.websocket.server)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.websocket.servlet)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jetty.xml)) = 10.0.7
Provides: bundled(osgi(org.eclipse.jface)) = 3.23.0
Provides: bundled(osgi(org.eclipse.jface.databinding)) = 1.13.0
Provides: bundled(osgi(org.eclipse.jface.databinding.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.jface.databinding.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.jface.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.jface.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.jface.notifications)) = 0.3.0
Provides: bundled(osgi(org.eclipse.jface.notifications.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.jface.notifications.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.jface.text.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.jface.text.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.osgi)) = 3.17.0
Provides: bundled(osgi(org.eclipse.osgi.compatibility.state.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.osgi.compatibility.state.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.osgi.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.osgi.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.osgi.services.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.osgi.services.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.osgi.util.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.osgi.util.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.rcp)) = 4.21.0
Provides: bundled(osgi(org.eclipse.swt.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.swt.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.text)) = 3.12.0
Provides: bundled(osgi(org.eclipse.text.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.text.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.forms.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.forms.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.intro.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.intro.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.net)) = 1.4.0
Provides: bundled(osgi(org.eclipse.ui.net.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.net.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.views.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.views.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.workbench.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.ui.workbench.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.update.configurator.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.update.configurator.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.eclipse.urischeme)) = 1.2.0
Provides: bundled(osgi(org.eclipse.urischeme.nl_ja)) = 4.21.0
Provides: bundled(osgi(org.eclipse.urischeme.nl_zh)) = 4.21.0
Provides: bundled(osgi(org.hamcrest.core)) = 1.3.0
Provides: bundled(osgi(org.hdrhistogram.HdrHistogram)) = 2.1.12
Provides: bundled(osgi(org.junit)) = 4.13.0
Provides: bundled(osgi(org.junit.jupiter.api)) = 5.7.1
Provides: bundled(osgi(org.junit.jupiter.engine)) = 5.7.1
Provides: bundled(osgi(org.junit.jupiter.migrationsupport)) = 5.7.1
Provides: bundled(osgi(org.junit.jupiter.params)) = 5.7.1
Provides: bundled(osgi(org.junit.platform.commons)) = 1.7.1
Provides: bundled(osgi(org.junit.platform.engine)) = 1.7.1
Provides: bundled(osgi(org.junit.platform.launcher)) = 1.7.1
Provides: bundled(osgi(org.junit.platform.runner)) = 1.7.1
Provides: bundled(osgi(org.junit.platform.suite.api)) = 1.7.1
Provides: bundled(osgi(org.junit.vintage.engine)) = 5.7.1
Provides: bundled(osgi(org.objectweb.asm)) = 9.2.0
Provides: bundled(osgi(org.objectweb.asm.commons)) = 9.2.0
Provides: bundled(osgi(org.objectweb.asm.tree)) = 9.2.0
Provides: bundled(osgi(org.objectweb.asm.tree.analysis)) = 9.2.0
Provides: bundled(osgi(org.objectweb.asm.util)) = 9.2.0
Provides: bundled(osgi(org.openjdk.jmc.alert)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.alert.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.alert.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.attach)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser.attach)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser.attach.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser.attach.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser.jdp)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser.jdp.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser.jdp.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.browser.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.commands)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.common)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.agent)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.persistence)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.persistence.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.persistence.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.diagnostic)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.diagnostic.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.diagnostic.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.mbeanbrowser)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.mbeanbrowser.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.mbeanbrowser.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.notification)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.notification.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.notification.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.console.ui.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.docs)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.docs.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.docs.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.configuration)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.controlpanel.ui)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.controlpanel.ui.configuration)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.controlpanel.ui.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.controlpanel.ui.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.flameview)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.graphview)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.heatmap)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.rules)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.rules.extensionprovider)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.rules.jdk)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.serializers)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.ui)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.ui.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.flightrecorder.ui.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.greychart)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.greychart.ui)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.greychart.ui.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.greychart.ui.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.jdp)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.joverflow)) = 1.0.0
Provides: bundled(osgi(org.openjdk.jmc.joverflow.ui)) = 1.0.1
Provides: bundled(osgi(org.openjdk.jmc.osgi.extension)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rcp.application)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rcp.application.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rcp.application.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rcp.intro)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rcp.intro.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rcp.intro.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rjmx)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rjmx.ext)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rjmx.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rjmx.services.jfr)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rjmx.ui)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rjmx.ui.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rjmx.ui.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.rjmx.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.ui)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.ui.celleditors)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.ui.common)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.ui.ja)) = 8.2.0
Provides: bundled(osgi(org.openjdk.jmc.ui.zh_CN)) = 8.2.0
Provides: bundled(osgi(org.opentest4j)) = 1.2.0
Provides: bundled(osgi(org.owasp.encoder)) = 1.2.3
Provides: bundled(osgi(org.sat4j.core)) = 2.3.5
Provides: bundled(osgi(org.sat4j.pb)) = 2.3.5
Provides: bundled(osgi(org.slf4j.api)) = 1.7.30
Provides: bundled(osgi(org.tukaani.xz)) = 1.9.0
Provides: bundled(osgi(org.w3c.css.sac)) = 1.3.1
Provides: bundled(osgi(org.w3c.dom.events)) = 3.0.0
Provides: bundled(osgi(org.w3c.dom.smil)) = 1.0.1
Provides: bundled(osgi(org.w3c.dom.svg)) = 1.1.0
%description
JDK Mission Control is a powerful profiler for HotSpot JVMs and has an
advanced set of tools that enables efficient and detailed analysis of the
extensive data collected by JDK Flight Recorder. The tool chain enables
developers and administrators to collect and analyze data from Java
applications running locally or deployed in production environments.
%prep
%setup -q -n %{jmc_dir_name}
%setup -q -T -D -a 1 -n %{jmc_dir_name}
%patch0 -p1
%patch1 -p1
%patch2 -p1
# Build & install jmc core libraries
# Skip the JDP Multicast Tests that don't work offline/under a VPN
mvn -Dmaven.repo.local=repository-%{version}-%{revdate} -o clean install -f core/pom.xml -DskipJDPMulticastTests=true
%pom_remove_plugin org.codehaus.mojo:flatten-maven-plugin
%pom_remove_plugin com.github.spotbugs:spotbugs-maven-plugin
# Info.plist are mac files and we only build for Linux
%pom_remove_plugin name.abuchen:fix-info-plist-maven-plugin application/org.openjdk.jmc.rcp.product
# disable tests that require the use of jfr
%pom_disable_module org.openjdk.jmc.rjmx.services.jfr.test application/tests
%pom_disable_module org.openjdk.jmc.flightrecorder.controlpanel.ui.test application/tests
# ide.launch tests expect SWT to be installed, but we're leveraging a local repository instead
%pom_disable_module org.openjdk.jmc.ide.launch.test application/tests
%build
# some tests require large heap and fail with OOM
# depending on the builder resources
mvn -Dmaven.repo.local=repository-%{version}-%{revdate} verify -o -Dmaven.test.failure.ignore=true -DskipJDPMulticastTests=true -DbuildId=rhel -DbuildNumber=%{revhash} -Dbuild.date=%{revdate}
%install
# not using mvn_install macro because it installs JMC as an Eclipse plugin
# we want to install JMC as an RCP application
# change jmc.ini to use system java (remove -vm option line)
sed -i '/^-vm$/d' %{_builddir}/%{jmc_dir_name}/target/products/org.openjdk.jmc/linux/gtk/x86_64/'JDK Mission Control'/%{name}.ini
sed -i '/^..\/..\/bin\/$/d' %{_builddir}/%{jmc_dir_name}/target/products/org.openjdk.jmc/linux/gtk/x86_64/'JDK Mission Control'/%{name}.ini
# specify a new location for eclipse config files (at ~/.jmc/${version}/eclipse) so it doesn't interfere with other eclipse installations
sed -i '$ a -Dosgi.configuration.area=@user.home/.%{name}/%{version}/eclipse' %{_builddir}/%{jmc_dir_name}/target/products/org.openjdk.jmc/linux/gtk/x86_64/'JDK Mission Control'/%{name}.ini
# move contents of target/products/org.openjdk.jmc/linux/gtk/x86_64/'JDK Mission Control' to /usr/lib/jmc/
install -d -m 755 %{buildroot}%{_jmcdir}
cp -p -r %{_builddir}/%{jmc_dir_name}/target/products/org.openjdk.jmc/linux/gtk/x86_64/'JDK Mission Control'/* %{buildroot}%{_jmcdir}/
cp -p -r %{_builddir}/%{jmc_dir_name}/target/products/org.openjdk.jmc/win32/* %{buildroot}%{_jmcdir}/
# move jmc.ini to /etc/jmc.ini
install -d -m 755 %{buildroot}%{_sysconfdir}
mv %{buildroot}%{_jmcdir}/%{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini
ln -s %{_sysconfdir}/%{name}.ini %{buildroot}%{_jmcdir}/%{name}.ini
# create symlink to jmc in /usr/bin/
install -d -m 755 %{buildroot}%{_bindir}
ln -s %{_jmcdir}/%{name} %{buildroot}%{_bindir}/%{name}
# create application launcher in desktop menu
install -d -m 755 %{buildroot}%{_datadir}/pixmaps
mv %{buildroot}%{_jmcdir}/icon.xpm %{buildroot}%{_datadir}/pixmaps/%{name}.xpm
chmod 644 %{buildroot}%{_datadir}/pixmaps/%{name}.xpm
desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE2}
# install pom file
install -d -m 755 %{buildroot}%{_datadir}/maven-poms/%{name}
install -p -m 644 %{_builddir}/%{jmc_dir_name}/pom.xml %{buildroot}%{_datadir}/maven-poms/%{name}/%{name}.pom
# install manpage and insert location of config file
install -d -m 755 %{buildroot}%{_mandir}/man1
install -p -m 644 %{SOURCE3} %{buildroot}%{_mandir}/man1/%{name}.1
sed -i "/.SH FILES/a .I %{_sysconfdir}/%{name}.ini" %{buildroot}%{_mandir}/man1/%{name}.1
%files
%license license/LICENSE.txt
%license license/THIRDPARTYREADME.txt
%doc README.md
%config(noreplace) %{_sysconfdir}/%{name}.ini
%{_jmcdir}
%{_mandir}/man1/%{name}.1*
%{_bindir}/%{name}
%{_datadir}/maven-poms/%{name}
%{_datadir}/pixmaps/%{name}.xpm
%{_datadir}/applications/%{name}.desktop
%changelog
* Wed May 3 2023 Joshua Matsuoka <jmatsuok@redhat.com> - 8.2.0-4
- Reenable the Windows artifacts. Related: rhbz#2192978
* Mon Dec 5 2022 Joshua Matsuoka <jmatsuok@redhat.com> - 8.2.0-3
- Fix provides and requires exclusions. Related: rhbz#2122401
* Fri Dec 2 2022 Joshua Matsuoka <jmatsuok@redhat.com> - 8.2.0-3
- Bumping Package NVR. Related: rhbz#2122401
* Wed Nov 30 2022 Joshua Matsuoka <jmatsuok@redhat.com> - 8.2.0-2
- Updating package for move to CRB. Related: rhbz#2122401
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com>
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 7.1.1-9.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Jan 22 2020 Jie Kang <jkang@redhat.com> - 7.1.1-9
- Rebuild for updated jna and tycho 2.x
* Fri Nov 06 2020 Jie Kang <jkang@redhat.com> - 7.1.1-8
- Use jakarta-mail
* Mon Sep 21 2020 Jie Kang <jkang@redhat.com> - 7.1.1-7
- Update license. Use javamail until jakarta-mail is included
- Add appdata and validate it
* Fri Aug 28 2020 Jie Kang <jkang@redhat.com> - 7.1.1-6
- Update to latest upstream
- Drop javax dependencies
- Clean spec
* Fri Aug 07 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-5
- Update symlink to match javamail version in rpms/javamail
- Version 1.6.5 is compatible with 1.6.3 according to the upstream compatibility notes
* Wed Jul 29 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-4
- Update symlink script with path to jakarta-activation
* Mon Apr 27 2020 Jie Kang <jkang@redhat.com> - 7.1.1-3
- Update to upstream 7.1.1 ga commit
* Wed Mar 11 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-2
- Update to latest upstream (to include JMC-6728)
* Tue Feb 25 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.1-1
- Update to latest upstream
* Tue Feb 18 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.0-2
- Add backports of JMC-6554 & JMC-6692 on top of JMC 7 for improved handling of OpenJDK8+JFR
* Thu Jan 09 2020 Alex Macdonald <almacdon@redhat.com> - 7.1.0-1
- Update to latest upstream (7.1.0-ga)
- Update the jmc7 branch to more closely resemble files of the main jmc branch
- Addition of Patch9 and Patch10, updated symlink_libs.sh
* Tue Sep 24 2019 Jie Kang <jkang@redhat.com> - 7.0.0-1
- Update to latest upstream with minor bug fixes
* Mon Jun 03 2019 Jie Kang <jkang@redhat.com> - 7.0.0-0
- Initial package

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (8.2.0-ga.tar.gz) = 18e9fc7fa1bcc7bd92195680279e07c0180a4e5431de9a72a97677a498bd532d80edb3da1eef250d275e03d70cd2aba0a7247696269747d7646f72be78d7ed73
SHA512 (repository-8.2.0-20220203.tar.gz) = b0c2594020a4f9ced72fd80786811e0cc8d7764608a76a05217832e0eadab9b3fca6c54ef1dac5fd321f689f252f04d7c9880a5810b693b9bbf54f85614a8f7d

View File

@ -47,12 +47,14 @@ pushd $1
# owasp-java-encoder
_sym org.owasp.encoder_1.2.2.jar /usr/share/java/owasp-java-encoder/encoder.jar
# jakarta-activation
_sym com.sun.activation.jakarta.activation_1.2.1.jar /usr/share/java/jaf/jakarta.activation.jar
_sym com.sun.activation.jakarta.activation_1.2.2.jar /usr/share/java/jakarta-activation/jakarta.activation.jar
# HdrHistogram
_sym org.hdrhistogram.HdrHistogram_2.1.11.jar /usr/share/java/HdrHistogram.jar
# jmc-core
# javamail
_sym com.sun.mail.jakarta.mail_1.6.5.jar /usr/share/java/jakarta-mail/jakarta.mail.jar
# jmc-core
_symlink org.openjdk.jmc.common_ common.jar
_symlink org.openjdk.jmc.flightrecorder_ flightrecorder.jar
_symlink org.openjdk.jmc.flightrecorder.rules_ flightrecorder.rules.jar
_symlink org.openjdk.jmc.flightrecorder.rules.jdk_ flightrecorder.rules.jdk.jar
popd
popd