Thanks Oliver. 

Helps a lot. At least when using the latest sling-bundle-parent, the project 
builds with Java 8.  Unfortunately, neither 
sling-org-apache-sling-servlets-annotations nor 
sling-org-apache-sling-junit-core [0] build with Java 11 [1] on my localhost or 
in by the CI.

sling-org-apache-sling-junit-core... it/annotations-it bundle has this error…
 
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 4.509 s 
<<< FAILURE! - in org.apache.sling.junit.annotations.ReferenceIT
[ERROR] org.apache.sling.junit.annotations.ReferenceIT  Time elapsed: 4.499 s  
<<< ERROR!
org.ops4j.pax.exam.TestContainerException: org.osgi.framework.BundleException: 
Could not create bundle object.
        at 
org.ops4j.pax.exam.forked.ForkedTestContainer.start(ForkedTestContainer.java:168)
        at org.ops4j.pax.exam.junit.PaxExamServer.before(PaxExamServer.java:87)
        at 
[email protected]/org.apache.sling.junit.annotations.ReferenceIT$1.before(ReferenceIT.java:61)
        at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:50)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:364)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:272)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:237)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:158)
        at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:428)
        at 
org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
        at 
org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:562)
        at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:548)
Caused by: org.osgi.framework.BundleException: Could not create bundle object.
        at org.apache.felix.framework.Felix.installBundle(Felix.java:3312)
        at 
org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:147)
        at 
org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:120)
        at 
org.ops4j.pax.swissbox.framework.RemoteFrameworkImpl.installBundle(RemoteFrameworkImpl.java:132)
        at jdk.internal.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at 
java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359)
        at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
        at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
        at 
java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:562)
        at 
java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:796)
        at 
java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:677)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at 
java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:676)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:834)
        at 
java.rmi/sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:303)
        at 
java.rmi/sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:279)
        at java.rmi/sun.rmi.server.UnicastRef.invoke(UnicastRef.java:164)
        at 
java.rmi/java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(RemoteObjectInvocationHandler.java:217)
        at 
java.rmi/java.rmi.server.RemoteObjectInvocationHandler.invoke(RemoteObjectInvocationHandler.java:162)
        at com.sun.proxy.$Proxy10.installBundle(Unknown Source)
        at 
org.ops4j.pax.exam.forked.ForkedTestContainer.installAndStartBundles(ForkedTestContainer.java:285)
        at 
org.ops4j.pax.exam.forked.ForkedTestContainer.start(ForkedTestContainer.java:165)
        ... 14 more
Caused by: java.lang.UnsupportedOperationException: Unable to add extension 
bundle.
        at 
org.apache.felix.framework.ExtensionManager.addExtensionBundle(ExtensionManager.java:430)
        at org.apache.felix.framework.Felix.installBundle(Felix.java:3279)
        at 
org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:147)
        at 
org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:120)
        at 
org.ops4j.pax.swissbox.framework.RemoteFrameworkImpl.installBundle(RemoteFrameworkImpl.java:132)
        at jdk.internal.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at 
java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359)
        at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
        at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
        at 
java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:562)
        at 
java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:796)
        at 
java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:677)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at 
java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:676)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:834)


sling-org-apache-sling-servlets-annotations appears to have the same problem. 
But it's CI is happy… I don’t think the CI for 
sling-org-apache-sling-servlets-annotations builds with Java 11 [2]?  So do you 
think building with Java 11 matters for sling-org-apache-sling-junit-core?

Thanks
Cris 

[0] https://github.com/apache/sling-org-apache-sling-junit-core/pull/5 
<https://github.com/apache/sling-org-apache-sling-junit-core/pull/5> 
[1] 
https://ci-builds.apache.org/blue/organizations/jenkins/Sling%2Fmodules%2Fsling-org-apache-sling-junit-core/detail/SLING-9915-Support-for-SlingAnnotationsTestRunner/10/pipeline/33
 
<https://ci-builds.apache.org/blue/organizations/jenkins/Sling/modules/sling-org-apache-sling-junit-core/detail/SLING-9915-Support-for-SlingAnnotationsTestRunner/10/pipeline/33>
[2] 
https://github.com/apache/sling-org-apache-sling-servlets-annotations/pull/3 
<https://github.com/apache/sling-org-apache-sling-servlets-annotations/pull/3> 




> On Dec 4, 2020, at 4:06 PM, Oliver Lietz <[email protected]> wrote:
> 
> On Friday, December 4, 2020 7:38:30 PM CET Cris Rockwell wrote:
>> Thanks for the link to sample projects. I reviewed some of these but it
>> seems to be mixed bag whether they build successfully for me with Java 11
>> or not.
> 
> Don't get confused, there are some "heavyweight" tests which fail randomly on 
> Jenkins but run fine locally.
> 
>> I’m asking because of a PAX exam test bundle added to PR
>> sling-org-apache-sling-junit-core [0] that works with Java 8 but will not
>> build successfully with Java 11. I modeled this bundle after
>> sling-org-apache-sling-servlets-annotations [1] which also seems to build
>> with Java 8 but not with 11.
>> 
>> Maybe it’s fine that way since the pom.xml states…
>>              <sling.java.version>8</sling.java.version>
>> 
>> 
>> Another seemly odd aspect relates to the parent version, 33. Using parent
>> version 35 or later, the build fails using Java 8 as well.  Resulting in
>> the error
> 
> Make sure you use latest *sling-bundle-parent* (not *sling* which is for 
> plain 
> JARs). See also my fixes in 
> https://github.com/apache/sling-org-apache-sling-servlets-annotations-it/commit/65a06c2aaee54f4365745d9045f9604d03950b87
>  and my 
> comments in SLING-9929.
> 
> It works also with Testing PaxExam 3.1.0, no need to upgrade to 4.0.0-
> SNAPSHOT. You can simply remove the org.apache.sling.testing.paxexam bundle 
> from the base configuration as it returns a ModifiableCompositeOption.
> 
> https://github.com/apache/sling-org-apache-sling-testing-paxexam/blob/
> org.apache.sling.testing.paxexam-3.1.0/src/main/java/org/apache/sling/testing/
> paxexam/TestSupport.java#L83
> 
> Regards,
> O.
> 
> 
>> [INFO] -------------------------------------------------------
>> [INFO]  T E S T S
>> [INFO] -------------------------------------------------------
>> [INFO] Running org.apache.sling.junit.annotations.ReferenceIT
>> [main] INFO org.ops4j.pax.exam.spi.DefaultExamSystem - Pax Exam System
>> (Version: 4.13.4) created. [main] INFO org.ops4j.pax.exam.ExamJavaRunner -
>> ExamJavaRunner completed successfully
>> 
>> [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed:
>> 4.225 s <<< FAILURE! - in org.apache.sling.junit.annotations.ReferenceIT
>> [ERROR] org.apache.sling.junit.annotations.ReferenceIT  Time elapsed: 4.218
>> s  <<< ERROR! org.ops4j.pax.exam.TestContainerException:
>> [file:/Users/cmrockwe/Documents/a3workspace/sling-org-apache-sling-junit-co
>> re/src/it/annotations-it/target/org.apache.sling.junit.annotations.it-1.0.0.
>> jar] is not a valid bundle (bundleSymbolicName and bundleName are null) at
>> org.ops4j.pax.exam.forked.provision.PlatformImpl.validateBundle(PlatformImp
>> l.java:290) at
>> org.ops4j.pax.exam.forked.provision.PlatformImpl.download(PlatformImpl.java
>> :151)
>> 
>> 
>> Inspecting the bundle META-INF/MANIFEST.MF illustrates the problem. But not
>> sure why the bundle is so incomplete...
>> 
>> Manifest-Version: 1.0
>> Implementation-Title: Apache Sling Junit Server Annotations IT
>> Implementation-Version: 1.0.0
>> Specification-Vendor: The Apache Software Foundation
>> Specification-Title: Apache Sling Junit Server Annotations IT
>> Build-Jdk-Spec: 1.8
>> Created-By: Maven Jar Plugin 3.2.0
>> Specification-Version: 1.0
>> Implementation-Vendor: The Apache Software Foundation
>> 
>> 
>> [0] https://github.com/apache/sling-org-apache-sling-junit-core/pull/5
>> [1]
>> https://github.com/apache/sling-org-apache-sling-servlets-annotations/tree/
>> master/src/it/annotations-it
>>> On Dec 3, 2020, at 5:42 AM, Oliver Lietz <[email protected]> wrote:
>>> 
>>> On Wednesday, December 2, 2020 11:45:28 PM CET Cris Rockwell wrote:
>>>> Hi Sling Devs
>>> 
>>> Hi Cris,
>>> 
>>>> Can anyone advise whether it is possible to use sling-testing-paxexam [0]
>>>> for projects based on Sling 12 Starter with Java11? Docs show how to
>>>> configure a slingQuickstart [1] but I was not and to get it working with
>>>> Java 11.
>>> 
>>> Sling Testing PaxExam is not using the Starter but the bundles and
>>> configurations from Sling's Karaf Features.
>>> 
>>> See the list of modules which use it, they build with 8, 11 and 14:
>>> 
>>> https://github.com/apache/sling-org-apache-sling-testing-paxexam/network/
>>> dependents
>>> 
>>> HTH,
>>> O.
>>> 
>>>> Thanks
>>>> Cris
>>>> 
>>>> [0] https://github.com/apache/sling-org-apache-sling-testing-paxexam
>>>> [1]
>>>> https://sling.apache.org/documentation/development/testing-paxexam.html#3
>>>> -c
>>>> reate-a-test-class-and-provide-a-configuration
> 
> 
> 
> 

Reply via email to