You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by re...@apache.org on 2018/04/27 12:55:10 UTC

svn commit: r1830347 - in /jackrabbit/oak/trunk/oak-it-osgi: pom.xml src/test/java/org/apache/jackrabbit/oak/osgi/OSGiIT.java

Author: reschke
Date: Fri Apr 27 12:55:10 2018
New Revision: 1830347

URL: http://svn.apache.org/viewvc?rev=1830347&view=rev
Log:
OAK-7414: oak-it-osgi fails on Java 10

upgrade felix.framework, use forked pax-exam-container, tune VM parameters

Thanks to Karl Pauls for the changes!

Modified:
    jackrabbit/oak/trunk/oak-it-osgi/pom.xml
    jackrabbit/oak/trunk/oak-it-osgi/src/test/java/org/apache/jackrabbit/oak/osgi/OSGiIT.java

Modified: jackrabbit/oak/trunk/oak-it-osgi/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-it-osgi/pom.xml?rev=1830347&r1=1830346&r2=1830347&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-it-osgi/pom.xml (original)
+++ jackrabbit/oak/trunk/oak-it-osgi/pom.xml Fri Apr 27 12:55:10 2018
@@ -156,14 +156,14 @@
     </dependency>
     <dependency>
       <groupId>org.ops4j.pax.exam</groupId>
-      <artifactId>pax-exam-container-native</artifactId>
+      <artifactId>pax-exam-container-forked</artifactId>
       <version>${pax.exam.version}</version>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.felix</groupId>
       <artifactId>org.apache.felix.framework</artifactId>
-      <version>5.6.8</version>
+      <version>5.6.10</version>
       <scope>test</scope>
     </dependency>
     <dependency>

Modified: jackrabbit/oak/trunk/oak-it-osgi/src/test/java/org/apache/jackrabbit/oak/osgi/OSGiIT.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-it-osgi/src/test/java/org/apache/jackrabbit/oak/osgi/OSGiIT.java?rev=1830347&r1=1830346&r2=1830347&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-it-osgi/src/test/java/org/apache/jackrabbit/oak/osgi/OSGiIT.java (original)
+++ jackrabbit/oak/trunk/oak-it-osgi/src/test/java/org/apache/jackrabbit/oak/osgi/OSGiIT.java Fri Apr 27 12:55:10 2018
@@ -22,9 +22,11 @@ import static org.ops4j.pax.exam.CoreOpt
 import static org.ops4j.pax.exam.CoreOptions.junitBundles;
 import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
 import static org.ops4j.pax.exam.CoreOptions.systemProperties;
+import static org.ops4j.pax.exam.CoreOptions.vmOption;
 
 import java.io.File;
 import java.io.IOException;
+import java.net.URI;
 import java.net.MalformedURLException;
 import java.net.URISyntaxException;
 
@@ -47,6 +49,7 @@ import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.InvalidSyntaxException;
 import org.osgi.framework.ServiceReference;
+import org.osgi.framework.Version;
 
 @RunWith(PaxExam.class)
 @ExamReactorStrategy(PerClass.class)
@@ -63,7 +66,29 @@ public class OSGiIT {
                 mavenBundle( "org.ops4j.pax.logging", "pax-logging-api", "1.7.2" ),
                 frameworkProperty("repository.home").value("target"),
                 systemProperties(new SystemPropertyOption("felix.fileinstall.dir").value(getConfigDir())),
-                jarBundles());
+                jarBundles(),
+                jpmsOptions());
+    }
+
+    private Option jpmsOptions(){
+        DefaultCompositeOption composite = new DefaultCompositeOption();
+        if (Version.parseVersion(System.getProperty("java.specification.version")).getMajor() > 1){
+            if (java.nio.file.Files.exists(java.nio.file.FileSystems.getFileSystem(URI.create("jrt:/")).getPath("modules", "java.se.ee"))){
+                composite.add(vmOption("--add-modules=java.se.ee"));
+            }
+            composite.add(vmOption("--add-opens=java.base/jdk.internal.loader=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.lang=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.lang.invoke=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.io=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.net=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.nio=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.util=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.util.jar=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.util.regex=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/java.util.zip=ALL-UNNAMED"));
+            composite.add(vmOption("--add-opens=java.base/sun.nio.ch=ALL-UNNAMED"));
+        }
+        return composite;
     }
 
     private String getConfigDir(){
@@ -91,7 +116,7 @@ public class OSGiIT {
                 Bundle.ACTIVE, bundle.getState());
         }
     }
-    
+
     @Test
     public void listBundles() {
         for (Bundle bundle : context.getBundles()) {