This is an automated email from the ASF dual-hosted git repository.
shuber pushed a commit to branch UNOMI-259-jdk11-support
in repository https://gitbox.apache.org/repos/asf/unomi.git
The following commit(s) were added to refs/heads/UNOMI-259-jdk11-support by
this push:
new 3093a2b UNOMI-259 - Fix integration tests & performance tests that
were not executing with JDK 11
3093a2b is described below
commit 3093a2b9f1104052dd9fa7f55a47f226774c1375
Author: Serge Huber <[email protected]>
AuthorDate: Mon Dec 23 16:40:04 2019 +0100
UNOMI-259
- Fix integration tests & performance tests that were not executing with
JDK 11
Signed-off-by: Serge Huber <[email protected]>
---
.../test/java/org/apache/unomi/itests/BaseIT.java | 47 +++++++++++++++++++++-
.../apache/unomi/performancetests/BasicTest.java | 40 +++++++++++++++++-
pom.xml | 4 +-
3 files changed, 86 insertions(+), 5 deletions(-)
diff --git a/itests/src/test/java/org/apache/unomi/itests/BaseIT.java
b/itests/src/test/java/org/apache/unomi/itests/BaseIT.java
index 11e93aa..d1bdd33 100644
--- a/itests/src/test/java/org/apache/unomi/itests/BaseIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/BaseIT.java
@@ -21,11 +21,16 @@ import org.junit.Assert;
import org.ops4j.pax.exam.Configuration;
import org.ops4j.pax.exam.CoreOptions;
import org.ops4j.pax.exam.Option;
+import org.ops4j.pax.exam.karaf.container.internal.JavaVersionUtil;
import org.ops4j.pax.exam.karaf.options.LogLevelOption.LogLevel;
import org.ops4j.pax.exam.options.MavenArtifactUrlReference;
import org.ops4j.pax.exam.options.MavenUrlReference;
+import org.ops4j.pax.exam.options.extra.VMOption;
import java.io.File;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
import java.util.function.Predicate;
import java.util.function.Supplier;
@@ -61,7 +66,9 @@ public abstract class BaseIT {
.type("xml")
.versionAsInProject();
- return new Option[]{
+ List<Option> options = new ArrayList<>();
+
+ Option[] commonOptions = new Option[]{
debugConfiguration("5006", false),
karafDistributionConfiguration()
.frameworkUrl(karafUrl)
@@ -86,7 +93,7 @@ public abstract class BaseIT {
replaceConfigurationFile("data/tmp/testLoginEventCondition.json", new File(
"src/test/resources/testLoginEventCondition.json")),
keepRuntimeFolder(),
- configureConsole().ignoreLocalConsole(),
+ // configureConsole().ignoreLocalConsole(),
logLevel(LogLevel.INFO),
editConfigurationFilePut("etc/org.ops4j.pax.logging.cfg",
"log4j2.rootLogger.level", "INFO"),
editConfigurationFilePut("etc/org.apache.karaf.features.cfg",
"serviceRequirements", "disable"),
@@ -107,6 +114,42 @@ public abstract class BaseIT {
CoreOptions.bundleStartLevel(100),
CoreOptions.frameworkStartLevel(100)
};
+
+ options.addAll(Arrays.asList(commonOptions));
+
+ if (JavaVersionUtil.getMajorVersion() >= 9) {
+ Option[] jdk9PlusOptions = new Option[]{
+ new VMOption("--add-reads=java.xml=java.logging"),
+ new
VMOption("--add-exports=java.base/org.apache.karaf.specs.locator=java.xml,ALL-UNNAMED"),
+ new VMOption("--patch-module"),
+ new
VMOption("java.base=lib/endorsed/org.apache.karaf.specs.locator-"
+ + System.getProperty("karaf.version") + ".jar"),
+ new VMOption("--patch-module"), new
VMOption("java.xml=lib/endorsed/org.apache.karaf.specs.java.xml-"
+ + System.getProperty("karaf.version") + ".jar"),
+ new VMOption("--add-opens"),
+ new VMOption("java.base/java.security=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.base/java.net=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.base/java.lang=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.base/java.util=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.naming/javax.naming.spi=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.rmi/sun.rmi.transport.tcp=ALL-UNNAMED"),
+ new
VMOption("--add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED"),
+ new
VMOption("--add-exports=java.base/sun.net.www.protocol.https=ALL-UNNAMED"),
+ new
VMOption("--add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED"),
+ new
VMOption("--add-exports=jdk.naming.rmi/com.sun.jndi.url.rmi=ALL-UNNAMED"),
+ new VMOption("-classpath"),
+ new VMOption("lib/jdk9plus/*" + File.pathSeparator +
"lib/boot/*")
+
+ };
+ options.addAll(Arrays.asList(jdk9PlusOptions));
+ }
+
+ return options.toArray(new Option[0]);
}
protected <T> T keepTrying(String failMessage, Supplier<T> call,
Predicate<T> predicate, int timeout, int retries) throws InterruptedException {
diff --git
a/performance-tests/src/test/java/org/apache/unomi/performancetests/BasicTest.java
b/performance-tests/src/test/java/org/apache/unomi/performancetests/BasicTest.java
index be3d7fe..ceda53b 100644
---
a/performance-tests/src/test/java/org/apache/unomi/performancetests/BasicTest.java
+++
b/performance-tests/src/test/java/org/apache/unomi/performancetests/BasicTest.java
@@ -90,7 +90,9 @@ public class BasicTest {
localRepository = "";
}
- return new Option[]{
+ List<Option> options = new ArrayList<>();
+
+ Option[] commonOptions = new Option[]{
KarafDistributionOption.debugConfiguration("5005", false),
KarafDistributionOption.logLevel(LogLevel.INFO),
KarafDistributionOption.editConfigurationFilePut("etc/org.ops4j.pax.url.mvn.cfg",
"org.ops4j.pax.url.mvn.localRepository", localRepository),
@@ -111,6 +113,42 @@ public class BasicTest {
// wrappedBundle(mavenBundle("com.h2database",
// "h2", "1.4.181"))
};
+
+ options.addAll(Arrays.asList(commonOptions));
+
+ if (JavaVersionUtil.getMajorVersion() >= 9) {
+ Option[] jdk9PlusOptions = new Option[]{
+ new VMOption("--add-reads=java.xml=java.logging"),
+ new
VMOption("--add-exports=java.base/org.apache.karaf.specs.locator=java.xml,ALL-UNNAMED"),
+ new VMOption("--patch-module"),
+ new
VMOption("java.base=lib/endorsed/org.apache.karaf.specs.locator-"
+ + System.getProperty("karaf.version") + ".jar"),
+ new VMOption("--patch-module"), new
VMOption("java.xml=lib/endorsed/org.apache.karaf.specs.java.xml-"
+ + System.getProperty("karaf.version") + ".jar"),
+ new VMOption("--add-opens"),
+ new VMOption("java.base/java.security=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.base/java.net=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.base/java.lang=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.base/java.util=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.naming/javax.naming.spi=ALL-UNNAMED"),
+ new VMOption("--add-opens"),
+ new VMOption("java.rmi/sun.rmi.transport.tcp=ALL-UNNAMED"),
+ new
VMOption("--add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED"),
+ new
VMOption("--add-exports=java.base/sun.net.www.protocol.https=ALL-UNNAMED"),
+ new
VMOption("--add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED"),
+ new
VMOption("--add-exports=jdk.naming.rmi/com.sun.jndi.url.rmi=ALL-UNNAMED"),
+ new VMOption("-classpath"),
+ new VMOption("lib/jdk9plus/*" + File.pathSeparator +
"lib/boot/*")
+
+ };
+ options.addAll(Arrays.asList(jdk9PlusOptions));
+ }
+
+ return options.toArray(new Option[0]);
}
@BenchmarkOptions(benchmarkRounds = 100, warmupRounds = 0, concurrency =
10)
diff --git a/pom.xml b/pom.xml
index 33bc991..3e30b82 100644
--- a/pom.xml
+++ b/pom.xml
@@ -77,11 +77,11 @@
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
- <scala.version>2.11.4</scala.version>
+ <scala.version>2.12.6</scala.version>
<encoding>UTF-8</encoding>
<gatling.version>2.1.2</gatling.version>
- <scala-maven-plugin.version>3.2.0</scala-maven-plugin.version>
+ <scala-maven-plugin.version>4.3.0</scala-maven-plugin.version>
<!-- Librairies for Karaf packaging -->
<xerces.version>2.11.0_1</xerces.version>