Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Arthanareeswaran2019-07-02 01:52:31 -0400
committerAlexander Kurtakov2019-07-02 13:19:02 -0400
commitebe99f4dda5c264320f5209ddc9e62ccd842119b (patch)
tree94e4639916a868e952eb9641929f170cae8c1a5c
parentc46ce88f668a266aed0ac0e9d160321f7e33c024 (diff)
downloadorg.eclipse.tycho-ebe99f4dda5c264320f5209ddc9e62ccd842119b.tar.gz
org.eclipse.tycho-ebe99f4dda5c264320f5209ddc9e62ccd842119b.tar.xz
org.eclipse.tycho-ebe99f4dda5c264320f5209ddc9e62ccd842119b.zip
Bug 548843 - Create a Java13 SE profile
Change-Id: Ie8957c8528c1c3f7d3f9c736454deb41d68bc69f Signed-off-by: Jay Arthanareeswaran <jarthana@in.ibm.com>
-rw-r--r--tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/StandardEEResolutionHints.java2
-rw-r--r--tycho-core/src/main/java/org/eclipse/tycho/core/ee/ExecutionEnvironmentUtils.java2
-rw-r--r--tycho-core/src/main/resources/JavaSE-12.profile219
-rw-r--r--tycho-core/src/main/resources/JavaSE-13.profile220
-rw-r--r--tycho-core/src/test/java/org/eclipse/tycho/core/ee/StandardExecutionEnvironmentTest.java19
-rw-r--r--tycho-its/projects/eeProfile.java11/repository/requiresJava11Profile.product2
-rw-r--r--tycho-its/projects/eeProfile.java12/bundle/META-INF/MANIFEST.MF6
-rw-r--r--tycho-its/projects/eeProfile.java12/bundle/build.properties4
-rw-r--r--tycho-its/projects/eeProfile.java12/bundle/pom.xml15
-rw-r--r--tycho-its/projects/eeProfile.java12/pom.xml39
-rw-r--r--tycho-its/projects/eeProfile.java12/repository/pom.xml28
-rw-r--r--tycho-its/projects/eeProfile.java12/repository/requiresJava12Profile.product18
-rw-r--r--tycho-its/projects/eeProfile.java13/bundle/META-INF/MANIFEST.MF6
-rw-r--r--tycho-its/projects/eeProfile.java13/bundle/build.properties4
-rw-r--r--tycho-its/projects/eeProfile.java13/bundle/pom.xml15
-rw-r--r--tycho-its/projects/eeProfile.java13/pom.xml39
-rw-r--r--tycho-its/projects/eeProfile.java13/repository/pom.xml28
-rw-r--r--tycho-its/projects/eeProfile.java13/repository/requiresJava13Profile.product18
-rw-r--r--tycho-its/src/test/java/org/eclipse/tycho/test/eeProfile/Java12ResolutionTest.java50
-rw-r--r--tycho-its/src/test/java/org/eclipse/tycho/test/eeProfile/Java13ResolutionTest.java50
-rw-r--r--tycho-p2/tycho-p2-publisher-plugin/src/main/java/org/eclipse/tycho/plugins/p2/publisher/PublishOsgiEEMojo.java2
21 files changed, 781 insertions, 5 deletions
diff --git a/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/StandardEEResolutionHints.java b/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/StandardEEResolutionHints.java
index a7d69c288..d6d1d1e53 100644
--- a/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/StandardEEResolutionHints.java
+++ b/tycho-bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/eclipse/tycho/p2/target/ee/StandardEEResolutionHints.java
@@ -46,7 +46,7 @@ public final class StandardEEResolutionHints implements ExecutionEnvironmentReso
/**
* This should be the most recent/encompassing EE that JREAction can create units for.
*/
- private static final String LAST_KNOWN_EE = "JavaSE-11";
+ private static final String LAST_KNOWN_EE = "JavaSE-13";
private final String executionEnvironment;
private final Map<VersionedId, IInstallableUnit> additionalUnits;
diff --git a/tycho-core/src/main/java/org/eclipse/tycho/core/ee/ExecutionEnvironmentUtils.java b/tycho-core/src/main/java/org/eclipse/tycho/core/ee/ExecutionEnvironmentUtils.java
index e06db29f8..d2a7d5bbd 100644
--- a/tycho-core/src/main/java/org/eclipse/tycho/core/ee/ExecutionEnvironmentUtils.java
+++ b/tycho-core/src/main/java/org/eclipse/tycho/core/ee/ExecutionEnvironmentUtils.java
@@ -40,6 +40,8 @@ public class ExecutionEnvironmentUtils {
List<String> profileFiles = new ArrayList<>(Arrays.asList(listProps.getProperty("java.profiles").split(",")));
profileFiles.add("JavaSE-10.profile");
profileFiles.add("JavaSE-11.profile");
+ profileFiles.add("JavaSE-12.profile");
+ profileFiles.add("JavaSE-13.profile");
Map<String, StandardExecutionEnvironment> envMap = new LinkedHashMap<>();
for (String profileFile : profileFiles) {
Properties props = readProperties(findInSystemBundle(profileFile.trim()));
diff --git a/tycho-core/src/main/resources/JavaSE-12.profile b/tycho-core/src/main/resources/JavaSE-12.profile
new file mode 100644
index 000000000..9d13b1934
--- /dev/null
+++ b/tycho-core/src/main/resources/JavaSE-12.profile
@@ -0,0 +1,219 @@
+# copied and adapted from JavaSE-11
+# TODO do system packages still make sense?
+org.osgi.framework.system.packages = \
+ java.applet,\
+ java.awt,\
+ java.awt.color,\
+ java.awt.datatransfer,\
+ java.awt.desktop,\
+ java.awt.dnd,\
+ java.awt.event,\
+ java.awt.font,\
+ java.awt.geom,\
+ java.awt.im,\
+ java.awt.im.spi,\
+ java.awt.image,\
+ java.awt.image.renderable,\
+ java.awt.print,\
+ java.beans,\
+ java.beans.beancontext,\
+ java.io,\
+ java.lang,\
+ java.lang.annotation,\
+ java.lang.instrument,\
+ java.lang.invoke,\
+ java.lang.management,\
+ java.lang.module,\
+ java.lang.ref,\
+ java.lang.reflect,\
+ java.math,\
+ java.net,\
+ java.net.spi,\
+ java.nio,\
+ java.nio.channels,\
+ java.nio.channels.spi,\
+ java.nio.charset,\
+ java.nio.charset.spi,\
+ java.nio.file,\
+ java.nio.file.attribute,\
+ java.nio.file.spi,\
+ java.rmi,\
+ java.rmi.activation,\
+ java.rmi.dgc,\
+ java.rmi.registry,\
+ java.rmi.server,\
+ java.security,\
+ java.security.acl,\
+ java.security.cert,\
+ java.security.interfaces,\
+ java.security.spec,\
+ java.sql,\
+ java.text,\
+ java.text.spi,\
+ java.time,\
+ java.time.chrono,\
+ java.time.format,\
+ java.time.temporal,\
+ java.time.zone,\
+ java.util,\
+ java.util.concurrent,\
+ java.util.concurrent.atomic,\
+ java.util.concurrent.locks,\
+ java.util.function,\
+ java.util.jar,\
+ java.util.logging,\
+ java.util.prefs,\
+ java.util.regex,\
+ java.util.spi,\
+ java.util.stream,\
+ java.util.zip,\
+ javax.accessibility,\
+ javax.annotation.processing,\
+ javax.crypto,\
+ javax.crypto.interfaces,\
+ javax.crypto.spec,\
+ javax.imageio,\
+ javax.imageio.event,\
+ javax.imageio.metadata,\
+ javax.imageio.plugins.bmp,\
+ javax.imageio.plugins.jpeg,\
+ javax.imageio.spi,\
+ javax.imageio.stream,\
+ javax.lang.model,\
+ javax.lang.model.element,\
+ javax.lang.model.type,\
+ javax.lang.model.util,\
+ javax.management,\
+ javax.management.loading,\
+ javax.management.modelmbean,\
+ javax.management.monitor,\
+ javax.management.openmbean,\
+ javax.management.relation,\
+ javax.management.remote,\
+ javax.management.remote.rmi,\
+ javax.management.timer,\
+ javax.naming,\
+ javax.naming.directory,\
+ javax.naming.event,\
+ javax.naming.ldap,\
+ javax.naming.spi,\
+ javax.net,\
+ javax.net.ssl,\
+ javax.print,\
+ javax.print.attribute,\
+ javax.print.attribute.standard,\
+ javax.print.event,\
+ javax.rmi.ssl,\
+ javax.script,\
+ javax.security.auth,\
+ javax.security.auth.callback,\
+ javax.security.auth.kerberos,\
+ javax.security.auth.login,\
+ javax.security.auth.spi,\
+ javax.security.auth.x500,\
+ javax.security.cert,\
+ javax.security.sasl,\
+ javax.sound.midi,\
+ javax.sound.midi.spi,\
+ javax.sound.sampled,\
+ javax.sound.sampled.spi,\
+ javax.sql,\
+ javax.sql.rowset,\
+ javax.sql.rowset.serial,\
+ javax.sql.rowset.spi,\
+ javax.swing,\
+ javax.swing.border,\
+ javax.swing.colorchooser,\
+ javax.swing.event,\
+ javax.swing.filechooser,\
+ javax.swing.plaf,\
+ javax.swing.plaf.basic,\
+ javax.swing.plaf.metal,\
+ javax.swing.plaf.multi,\
+ javax.swing.plaf.nimbus,\
+ javax.swing.plaf.synth,\
+ javax.swing.table,\
+ javax.swing.text,\
+ javax.swing.text.html,\
+ javax.swing.text.html.parser,\
+ javax.swing.text.rtf,\
+ javax.swing.tree,\
+ javax.swing.undo,\
+ javax.tools,\
+ javax.transaction.xa,\
+ javax.xml,\
+ javax.xml.crypto,\
+ javax.xml.crypto.dom,\
+ javax.xml.crypto.dsig,\
+ javax.xml.crypto.dsig.dom,\
+ javax.xml.crypto.dsig.keyinfo,\
+ javax.xml.crypto.dsig.spec,\
+ javax.xml.datatype,\
+ javax.xml.namespace,\
+ javax.xml.parsers,\
+ javax.xml.stream,\
+ javax.xml.stream.events,\
+ javax.xml.stream.util,\
+ javax.xml.transform,\
+ javax.xml.transform.dom,\
+ javax.xml.transform.sax,\
+ javax.xml.transform.stax,\
+ javax.xml.transform.stream,\
+ javax.xml.validation,\
+ javax.xml.xpath,\
+ org.ietf.jgss,\
+ org.w3c.dom,\
+ org.w3c.dom.bootstrap,\
+ org.w3c.dom.css,\
+ org.w3c.dom.events,\
+ org.w3c.dom.html,\
+ org.w3c.dom.ls,\
+ org.w3c.dom.ranges,\
+ org.w3c.dom.stylesheets,\
+ org.w3c.dom.traversal,\
+ org.w3c.dom.views,\
+ org.w3c.dom.xpath,\
+ org.xml.sax,\
+ org.xml.sax.ext,\
+ org.xml.sax.helpers
+org.osgi.framework.bootdelegation = \
+ javax.*,\
+ org.ietf.jgss,\
+ org.omg.*,\
+ org.w3c.*,\
+ org.xml.*,\
+ sun.*,\
+ com.sun.*
+org.osgi.framework.executionenvironment = \
+ OSGi/Minimum-1.0,\
+ OSGi/Minimum-1.1,\
+ OSGi/Minimum-1.2,\
+ JavaSE/compact1-1.8,\
+ JavaSE/compact2-1.8,\
+ JavaSE/compact3-1.8,\
+ JRE-1.1,\
+ J2SE-1.2,\
+ J2SE-1.3,\
+ J2SE-1.4,\
+ J2SE-1.5,\
+ JavaSE-1.6,\
+ JavaSE-1.7,\
+ JavaSE-1.8,\
+ JavaSE-9,\
+ JavaSE-10,\
+ JavaSE-11,\
+ JavaSE-12,
+org.osgi.framework.system.capabilities = \
+ osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0, 1.1, 1.2",\
+ osgi.ee; osgi.ee="JRE"; version:List<Version>="1.0, 1.1",\
+ osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 9.0, 10.0, 11.0, 12.0",\
+ osgi.ee; osgi.ee="JavaSE/compact1"; version:List<Version>="1.8, 9.0, 10.0, 11.0",\
+ osgi.ee; osgi.ee="JavaSE/compact2"; version:List<Version>="1.8, 9.0, 10.0, 11.0",\
+ osgi.ee; osgi.ee="JavaSE/compact3"; version:List<Version>="1.8, 9.0, 10.0, 11.0"
+osgi.java.profile.name = JavaSE-12
+org.eclipse.jdt.core.compiler.compliance=12
+org.eclipse.jdt.core.compiler.source=12
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=12
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
diff --git a/tycho-core/src/main/resources/JavaSE-13.profile b/tycho-core/src/main/resources/JavaSE-13.profile
new file mode 100644
index 000000000..a69c50f9d
--- /dev/null
+++ b/tycho-core/src/main/resources/JavaSE-13.profile
@@ -0,0 +1,220 @@
+# copied and adapted from JavaSE-11
+# TODO do system packages still make sense?
+org.osgi.framework.system.packages = \
+ java.applet,\
+ java.awt,\
+ java.awt.color,\
+ java.awt.datatransfer,\
+ java.awt.desktop,\
+ java.awt.dnd,\
+ java.awt.event,\
+ java.awt.font,\
+ java.awt.geom,\
+ java.awt.im,\
+ java.awt.im.spi,\
+ java.awt.image,\
+ java.awt.image.renderable,\
+ java.awt.print,\
+ java.beans,\
+ java.beans.beancontext,\
+ java.io,\
+ java.lang,\
+ java.lang.annotation,\
+ java.lang.instrument,\
+ java.lang.invoke,\
+ java.lang.management,\
+ java.lang.module,\
+ java.lang.ref,\
+ java.lang.reflect,\
+ java.math,\
+ java.net,\
+ java.net.spi,\
+ java.nio,\
+ java.nio.channels,\
+ java.nio.channels.spi,\
+ java.nio.charset,\
+ java.nio.charset.spi,\
+ java.nio.file,\
+ java.nio.file.attribute,\
+ java.nio.file.spi,\
+ java.rmi,\
+ java.rmi.activation,\
+ java.rmi.dgc,\
+ java.rmi.registry,\
+ java.rmi.server,\
+ java.security,\
+ java.security.acl,\
+ java.security.cert,\
+ java.security.interfaces,\
+ java.security.spec,\
+ java.sql,\
+ java.text,\
+ java.text.spi,\
+ java.time,\
+ java.time.chrono,\
+ java.time.format,\
+ java.time.temporal,\
+ java.time.zone,\
+ java.util,\
+ java.util.concurrent,\
+ java.util.concurrent.atomic,\
+ java.util.concurrent.locks,\
+ java.util.function,\
+ java.util.jar,\
+ java.util.logging,\
+ java.util.prefs,\
+ java.util.regex,\
+ java.util.spi,\
+ java.util.stream,\
+ java.util.zip,\
+ javax.accessibility,\
+ javax.annotation.processing,\
+ javax.crypto,\
+ javax.crypto.interfaces,\
+ javax.crypto.spec,\
+ javax.imageio,\
+ javax.imageio.event,\
+ javax.imageio.metadata,\
+ javax.imageio.plugins.bmp,\
+ javax.imageio.plugins.jpeg,\
+ javax.imageio.spi,\
+ javax.imageio.stream,\
+ javax.lang.model,\
+ javax.lang.model.element,\
+ javax.lang.model.type,\
+ javax.lang.model.util,\
+ javax.management,\
+ javax.management.loading,\
+ javax.management.modelmbean,\
+ javax.management.monitor,\
+ javax.management.openmbean,\
+ javax.management.relation,\
+ javax.management.remote,\
+ javax.management.remote.rmi,\
+ javax.management.timer,\
+ javax.naming,\
+ javax.naming.directory,\
+ javax.naming.event,\
+ javax.naming.ldap,\
+ javax.naming.spi,\
+ javax.net,\
+ javax.net.ssl,\
+ javax.print,\
+ javax.print.attribute,\
+ javax.print.attribute.standard,\
+ javax.print.event,\
+ javax.rmi.ssl,\
+ javax.script,\
+ javax.security.auth,\
+ javax.security.auth.callback,\
+ javax.security.auth.kerberos,\
+ javax.security.auth.login,\
+ javax.security.auth.spi,\
+ javax.security.auth.x500,\
+ javax.security.cert,\
+ javax.security.sasl,\
+ javax.sound.midi,\
+ javax.sound.midi.spi,\
+ javax.sound.sampled,\
+ javax.sound.sampled.spi,\
+ javax.sql,\
+ javax.sql.rowset,\
+ javax.sql.rowset.serial,\
+ javax.sql.rowset.spi,\
+ javax.swing,\
+ javax.swing.border,\
+ javax.swing.colorchooser,\
+ javax.swing.event,\
+ javax.swing.filechooser,\
+ javax.swing.plaf,\
+ javax.swing.plaf.basic,\
+ javax.swing.plaf.metal,\
+ javax.swing.plaf.multi,\
+ javax.swing.plaf.nimbus,\
+ javax.swing.plaf.synth,\
+ javax.swing.table,\
+ javax.swing.text,\
+ javax.swing.text.html,\
+ javax.swing.text.html.parser,\
+ javax.swing.text.rtf,\
+ javax.swing.tree,\
+ javax.swing.undo,\
+ javax.tools,\
+ javax.transaction.xa,\
+ javax.xml,\
+ javax.xml.crypto,\
+ javax.xml.crypto.dom,\
+ javax.xml.crypto.dsig,\
+ javax.xml.crypto.dsig.dom,\
+ javax.xml.crypto.dsig.keyinfo,\
+ javax.xml.crypto.dsig.spec,\
+ javax.xml.datatype,\
+ javax.xml.namespace,\
+ javax.xml.parsers,\
+ javax.xml.stream,\
+ javax.xml.stream.events,\
+ javax.xml.stream.util,\
+ javax.xml.transform,\
+ javax.xml.transform.dom,\
+ javax.xml.transform.sax,\
+ javax.xml.transform.stax,\
+ javax.xml.transform.stream,\
+ javax.xml.validation,\
+ javax.xml.xpath,\
+ org.ietf.jgss,\
+ org.w3c.dom,\
+ org.w3c.dom.bootstrap,\
+ org.w3c.dom.css,\
+ org.w3c.dom.events,\
+ org.w3c.dom.html,\
+ org.w3c.dom.ls,\
+ org.w3c.dom.ranges,\
+ org.w3c.dom.stylesheets,\
+ org.w3c.dom.traversal,\
+ org.w3c.dom.views,\
+ org.w3c.dom.xpath,\
+ org.xml.sax,\
+ org.xml.sax.ext,\
+ org.xml.sax.helpers
+org.osgi.framework.bootdelegation = \
+ javax.*,\
+ org.ietf.jgss,\
+ org.omg.*,\
+ org.w3c.*,\
+ org.xml.*,\
+ sun.*,\
+ com.sun.*
+org.osgi.framework.executionenvironment = \
+ OSGi/Minimum-1.0,\
+ OSGi/Minimum-1.1,\
+ OSGi/Minimum-1.2,\
+ JavaSE/compact1-1.8,\
+ JavaSE/compact2-1.8,\
+ JavaSE/compact3-1.8,\
+ JRE-1.1,\
+ J2SE-1.2,\
+ J2SE-1.3,\
+ J2SE-1.4,\
+ J2SE-1.5,\
+ JavaSE-1.6,\
+ JavaSE-1.7,\
+ JavaSE-1.8,\
+ JavaSE-9,\
+ JavaSE-10,\
+ JavaSE-11,\
+ JavaSE-12,\
+ JavaSE-13,
+org.osgi.framework.system.capabilities = \
+ osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0, 1.1, 1.2",\
+ osgi.ee; osgi.ee="JRE"; version:List<Version>="1.0, 1.1",\
+ osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 9.0, 10.0, 11.0, 12.0, 13.0",\
+ osgi.ee; osgi.ee="JavaSE/compact1"; version:List<Version>="1.8, 9.0, 10.0, 11.0",\
+ osgi.ee; osgi.ee="JavaSE/compact2"; version:List<Version>="1.8, 9.0, 10.0, 11.0",\
+ osgi.ee; osgi.ee="JavaSE/compact3"; version:List<Version>="1.8, 9.0, 10.0, 11.0"
+osgi.java.profile.name = JavaSE-13
+org.eclipse.jdt.core.compiler.compliance=13
+org.eclipse.jdt.core.compiler.source=13
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=13
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
diff --git a/tycho-core/src/test/java/org/eclipse/tycho/core/ee/StandardExecutionEnvironmentTest.java b/tycho-core/src/test/java/org/eclipse/tycho/core/ee/StandardExecutionEnvironmentTest.java
index 2d16c2bfb..50286f285 100644
--- a/tycho-core/src/test/java/org/eclipse/tycho/core/ee/StandardExecutionEnvironmentTest.java
+++ b/tycho-core/src/test/java/org/eclipse/tycho/core/ee/StandardExecutionEnvironmentTest.java
@@ -25,7 +25,9 @@ import org.junit.Test;
public class StandardExecutionEnvironmentTest {
- private StandardExecutionEnvironment javaSE11Environment;
+ private StandardExecutionEnvironment javaSE13Environment;
+ private StandardExecutionEnvironment javaSE12Environment;
+ private StandardExecutionEnvironment javaSE11Environment;
private StandardExecutionEnvironment javaSE10Environment;
private StandardExecutionEnvironment javaSE9Environment;
private StandardExecutionEnvironment javaSE8Environment;
@@ -50,6 +52,8 @@ public class StandardExecutionEnvironmentTest {
javaSECompact1Enviroment = ExecutionEnvironmentUtils.getExecutionEnvironment("JavaSE/compact1-1.8");
javaSECompact2Enviroment = ExecutionEnvironmentUtils.getExecutionEnvironment("JavaSE/compact2-1.8");
javaSECompact3Enviroment = ExecutionEnvironmentUtils.getExecutionEnvironment("JavaSE/compact3-1.8");
+ javaSE13Environment = ExecutionEnvironmentUtils.getExecutionEnvironment("JavaSE-13");
+ javaSE12Environment = ExecutionEnvironmentUtils.getExecutionEnvironment("JavaSE-12");
javaSE11Environment = ExecutionEnvironmentUtils.getExecutionEnvironment("JavaSE-11");
javaSE10Environment = ExecutionEnvironmentUtils.getExecutionEnvironment("JavaSE-10");
javaSE9Environment = ExecutionEnvironmentUtils.getExecutionEnvironment("JavaSE-9");
@@ -70,6 +74,8 @@ public class StandardExecutionEnvironmentTest {
@Test
public void testNotNull() {
+ assertNotNull(javaSE13Environment);
+ assertNotNull(javaSE12Environment);
assertNotNull(javaSE11Environment);
assertNotNull(javaSE10Environment);
assertNotNull(javaSE9Environment);
@@ -93,6 +99,8 @@ public class StandardExecutionEnvironmentTest {
@Test
public void testGetProfileName() {
+ assertEquals("JavaSE-13", javaSE13Environment.getProfileName());
+ assertEquals("JavaSE-12", javaSE12Environment.getProfileName());
assertEquals("JavaSE-11", javaSE11Environment.getProfileName());
assertEquals("JavaSE-10", javaSE10Environment.getProfileName());
assertEquals("JavaSE-9", javaSE9Environment.getProfileName());
@@ -132,6 +140,8 @@ public class StandardExecutionEnvironmentTest {
assertEquals("9", javaSE9Environment.getCompilerSourceLevelDefault());
assertEquals("10", javaSE10Environment.getCompilerSourceLevelDefault());
assertEquals("11", javaSE11Environment.getCompilerSourceLevelDefault());
+ assertEquals("12", javaSE12Environment.getCompilerSourceLevelDefault());
+ assertEquals("13", javaSE13Environment.getCompilerSourceLevelDefault());
assertEquals("1.8", javaSECompact1Enviroment.getCompilerSourceLevelDefault());
assertEquals("1.8", javaSECompact2Enviroment.getCompilerSourceLevelDefault());
assertEquals("1.8", javaSECompact3Enviroment.getCompilerSourceLevelDefault());
@@ -155,6 +165,8 @@ public class StandardExecutionEnvironmentTest {
assertEquals("9", javaSE9Environment.getCompilerTargetLevelDefault());
assertEquals("10", javaSE10Environment.getCompilerTargetLevelDefault());
assertEquals("11", javaSE11Environment.getCompilerTargetLevelDefault());
+ assertEquals("12", javaSE12Environment.getCompilerTargetLevelDefault());
+ assertEquals("13", javaSE13Environment.getCompilerTargetLevelDefault());
assertEquals("1.8", javaSECompact1Enviroment.getCompilerTargetLevelDefault());
assertEquals("1.8", javaSECompact2Enviroment.getCompilerTargetLevelDefault());
assertEquals("1.8", javaSECompact3Enviroment.getCompilerTargetLevelDefault());
@@ -180,6 +192,8 @@ public class StandardExecutionEnvironmentTest {
assertTrue(javaSE10Environment.isCompatibleCompilerTargetLevel("10"));
assertTrue(javaSE10Environment.isCompatibleCompilerTargetLevel("10.0"));
assertTrue(javaSE11Environment.isCompatibleCompilerTargetLevel("11.0"));
+ assertTrue(javaSE12Environment.isCompatibleCompilerTargetLevel("12.0"));
+ assertTrue(javaSE13Environment.isCompatibleCompilerTargetLevel("13.0"));
}
@Test(expected = UnknownEnvironmentException.class)
@@ -193,7 +207,8 @@ public class StandardExecutionEnvironmentTest {
osgiMin11Environment, osgiMin12Environment, cdc10Environment, cdc11Environment, jre11Environment,
j2SE12Environment, j2SE13Environment, j2SE14Environment, j2SE5Enviroment, javaSE6Enviroment,
javaSE7Enviroment, javaSECompact1Enviroment, javaSECompact2Enviroment, javaSECompact3Enviroment,
- javaSE8Environment, javaSE9Environment, javaSE10Environment, javaSE11Environment));
+ javaSE8Environment, javaSE9Environment, javaSE10Environment, javaSE11Environment,
+ javaSE12Environment, javaSE13Environment));
List<StandardExecutionEnvironment> actualList = new ArrayList<>(expectedList);
Collections.shuffle(actualList);
Collections.sort(actualList);
diff --git a/tycho-its/projects/eeProfile.java11/repository/requiresJava11Profile.product b/tycho-its/projects/eeProfile.java11/repository/requiresJava11Profile.product
index 2865114a8..744f497d1 100644
--- a/tycho-its/projects/eeProfile.java11/repository/requiresJava11Profile.product
+++ b/tycho-its/projects/eeProfile.java11/repository/requiresJava11Profile.product
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
-<product uid="requiresJava10Profile.product" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="false">
+<product uid="requiresJava11Profile.product" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="false">
<configIni use="default">
</configIni>
diff --git a/tycho-its/projects/eeProfile.java12/bundle/META-INF/MANIFEST.MF b/tycho-its/projects/eeProfile.java12/bundle/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..fc5557f6b
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java12/bundle/META-INF/MANIFEST.MF
@@ -0,0 +1,6 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Bundle
+Bundle-SymbolicName: java12.bundle
+Bundle-Version: 1.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-12
diff --git a/tycho-its/projects/eeProfile.java12/bundle/build.properties b/tycho-its/projects/eeProfile.java12/bundle/build.properties
new file mode 100644
index 000000000..34d2e4d2d
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java12/bundle/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
diff --git a/tycho-its/projects/eeProfile.java12/bundle/pom.xml b/tycho-its/projects/eeProfile.java12/bundle/pom.xml
new file mode 100644
index 000000000..97140644d
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java12/bundle/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>tycho-its-project.eeProfile.java12</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <artifactId>parent</artifactId>
+ </parent>
+
+ <artifactId>java12.bundle</artifactId>
+ <packaging>eclipse-plugin</packaging>
+
+</project>
diff --git a/tycho-its/projects/eeProfile.java12/pom.xml b/tycho-its/projects/eeProfile.java12/pom.xml
new file mode 100644
index 000000000..a2a7e6b45
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java12/pom.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>tycho-its-project.eeProfile.java12</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <artifactId>parent</artifactId>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>bundle</module>
+ <module>repository</module>
+ </modules>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-maven-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <extensions>true</extensions>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-repository-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <!-- to ease programmatic assertions -->
+ <compress>false</compress>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+</project>
diff --git a/tycho-its/projects/eeProfile.java12/repository/pom.xml b/tycho-its/projects/eeProfile.java12/repository/pom.xml
new file mode 100644
index 000000000..2f7281553
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java12/repository/pom.xml
@@ -0,0 +1,28 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>tycho-its-project.eeProfile.java12</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>java12.repository</artifactId>
+ <packaging>eclipse-repository</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-director-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>materialize-products</id>
+ <goals>
+ <goal>materialize-products</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/tycho-its/projects/eeProfile.java12/repository/requiresJava12Profile.product b/tycho-its/projects/eeProfile.java12/repository/requiresJava12Profile.product
new file mode 100644
index 000000000..155e5b5b9
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java12/repository/requiresJava12Profile.product
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product uid="requiresJava12Profile.product" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="false">
+
+ <configIni use="default">
+ </configIni>
+
+ <launcherArgs>
+ <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
+ </launcherArgs>
+
+ <plugins>
+ <plugin id="java12.bundle"/>
+ </plugins>
+
+
+</product>
diff --git a/tycho-its/projects/eeProfile.java13/bundle/META-INF/MANIFEST.MF b/tycho-its/projects/eeProfile.java13/bundle/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..238b3b6b4
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java13/bundle/META-INF/MANIFEST.MF
@@ -0,0 +1,6 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Bundle
+Bundle-SymbolicName: java13.bundle
+Bundle-Version: 1.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-13
diff --git a/tycho-its/projects/eeProfile.java13/bundle/build.properties b/tycho-its/projects/eeProfile.java13/bundle/build.properties
new file mode 100644
index 000000000..34d2e4d2d
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java13/bundle/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
diff --git a/tycho-its/projects/eeProfile.java13/bundle/pom.xml b/tycho-its/projects/eeProfile.java13/bundle/pom.xml
new file mode 100644
index 000000000..638c52775
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java13/bundle/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>tycho-its-project.eeProfile.java13</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <artifactId>parent</artifactId>
+ </parent>
+
+ <artifactId>java13.bundle</artifactId>
+ <packaging>eclipse-plugin</packaging>
+
+</project>
diff --git a/tycho-its/projects/eeProfile.java13/pom.xml b/tycho-its/projects/eeProfile.java13/pom.xml
new file mode 100644
index 000000000..8b60ac423
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java13/pom.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>tycho-its-project.eeProfile.java13</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <artifactId>parent</artifactId>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>bundle</module>
+ <module>repository</module>
+ </modules>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-maven-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <extensions>true</extensions>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-repository-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <!-- to ease programmatic assertions -->
+ <compress>false</compress>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+</project>
diff --git a/tycho-its/projects/eeProfile.java13/repository/pom.xml b/tycho-its/projects/eeProfile.java13/repository/pom.xml
new file mode 100644
index 000000000..4e5e22189
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java13/repository/pom.xml
@@ -0,0 +1,28 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>tycho-its-project.eeProfile.java13</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>java13.repository</artifactId>
+ <packaging>eclipse-repository</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-director-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>materialize-products</id>
+ <goals>
+ <goal>materialize-products</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/tycho-its/projects/eeProfile.java13/repository/requiresJava13Profile.product b/tycho-its/projects/eeProfile.java13/repository/requiresJava13Profile.product
new file mode 100644
index 000000000..acc6bc2b3
--- /dev/null
+++ b/tycho-its/projects/eeProfile.java13/repository/requiresJava13Profile.product
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product uid="requiresJava13Profile.product" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="false">
+
+ <configIni use="default">
+ </configIni>
+
+ <launcherArgs>
+ <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
+ </launcherArgs>
+
+ <plugins>
+ <plugin id="java13.bundle"/>
+ </plugins>
+
+
+</product>
diff --git a/tycho-its/src/test/java/org/eclipse/tycho/test/eeProfile/Java12ResolutionTest.java b/tycho-its/src/test/java/org/eclipse/tycho/test/eeProfile/Java12ResolutionTest.java
new file mode 100644
index 000000000..691eec154
--- /dev/null
+++ b/tycho-its/src/test/java/org/eclipse/tycho/test/eeProfile/Java12ResolutionTest.java
@@ -0,0 +1,50 @@
+/*******************************************************************************
+ * Copyright (c) 2019 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.tycho.test.eeProfile;
+
+import static org.hamcrest.CoreMatchers.hasItem;
+import static org.junit.Assert.assertThat;
+
+import java.io.File;
+import java.util.List;
+
+import org.apache.maven.it.Verifier;
+import org.eclipse.tycho.test.AbstractTychoIntegrationTest;
+import org.eclipse.tycho.test.util.P2RepositoryTool;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class Java12ResolutionTest extends AbstractTychoIntegrationTest {
+
+ private static File buildResult;
+
+ @BeforeClass
+ public static void setUp() throws Exception {
+ buildResult = new Java12ResolutionTest().runBuild();
+ }
+
+ public File runBuild() throws Exception {
+ Verifier verifier = getVerifier("eeProfile.java12", false);
+ verifier.executeGoal("verify");
+ verifier.verifyErrorFreeLog();
+ return new File(verifier.getBasedir());
+ }
+
+ @Test
+ public void testProductBuildForJava12() throws Exception {
+ // a p2 repository that contains a product for Java 12
+ P2RepositoryTool productRepo = P2RepositoryTool.forEclipseRepositoryModule(new File(buildResult, "repository"));
+ List<String> jreUnitVersions = productRepo.getUnitVersions("a.jre.javase");
+ // we expect java 12 (java 10 provides more system packages)
+ assertThat(jreUnitVersions, hasItem("12.0.0"));
+ }
+
+}
diff --git a/tycho-its/src/test/java/org/eclipse/tycho/test/eeProfile/Java13ResolutionTest.java b/tycho-its/src/test/java/org/eclipse/tycho/test/eeProfile/Java13ResolutionTest.java
new file mode 100644
index 000000000..49f08b9e1
--- /dev/null
+++ b/tycho-its/src/test/java/org/eclipse/tycho/test/eeProfile/Java13ResolutionTest.java
@@ -0,0 +1,50 @@
+/*******************************************************************************
+ * Copyright (c) 2019 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.tycho.test.eeProfile;
+
+import static org.hamcrest.CoreMatchers.hasItem;
+import static org.junit.Assert.assertThat;
+
+import java.io.File;
+import java.util.List;
+
+import org.apache.maven.it.Verifier;
+import org.eclipse.tycho.test.AbstractTychoIntegrationTest;
+import org.eclipse.tycho.test.util.P2RepositoryTool;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class Java13ResolutionTest extends AbstractTychoIntegrationTest {
+
+ private static File buildResult;
+
+ @BeforeClass
+ public static void setUp() throws Exception {
+ buildResult = new Java13ResolutionTest().runBuild();
+ }
+
+ public File runBuild() throws Exception {
+ Verifier verifier = getVerifier("eeProfile.java13", false);
+ verifier.executeGoal("verify");
+ verifier.verifyErrorFreeLog();
+ return new File(verifier.getBasedir());
+ }
+
+ @Test
+ public void testProductBuildForJava13() throws Exception {
+ // a p2 repository that contains a product for Java 13
+ P2RepositoryTool productRepo = P2RepositoryTool.forEclipseRepositoryModule(new File(buildResult, "repository"));
+ List<String> jreUnitVersions = productRepo.getUnitVersions("a.jre.javase");
+ // we expect java 13 (java 10 provides more system packages)
+ assertThat(jreUnitVersions, hasItem("13.0.0"));
+ }
+
+}
diff --git a/tycho-p2/tycho-p2-publisher-plugin/src/main/java/org/eclipse/tycho/plugins/p2/publisher/PublishOsgiEEMojo.java b/tycho-p2/tycho-p2-publisher-plugin/src/main/java/org/eclipse/tycho/plugins/p2/publisher/PublishOsgiEEMojo.java
index 5089c2edc..704ff6156 100644
--- a/tycho-p2/tycho-p2-publisher-plugin/src/main/java/org/eclipse/tycho/plugins/p2/publisher/PublishOsgiEEMojo.java
+++ b/tycho-p2/tycho-p2-publisher-plugin/src/main/java/org/eclipse/tycho/plugins/p2/publisher/PublishOsgiEEMojo.java
@@ -41,7 +41,7 @@ public final class PublishOsgiEEMojo extends AbstractPublishMojo {
* OSGi/Minimum-1.0.
* </p>
*/
- @Parameter(defaultValue = "JavaSE-10, JavaSE-11")
+ @Parameter(defaultValue = "JavaSE-10, JavaSE-11, JavaSE-12, JavaSE-13")
private String profiles;
@Parameter(defaultValue = "false")

Back to the top