Strange, I really remember testing that change across both felix and
equinox on substrate.  Thanks for fixing it.

Tom.

On Fri, Feb 12, 2021 at 3:18 AM Karl Pauls <[email protected]> wrote:

> Hi Pierre,
>
> good catch, the latest refactoring [0] removed the dependency for the
> log service. I added it back in [1] - can you try again?
>
> We need better tests for the substrate examples - they are hard to
> test and really don't like when something is missing :-)
>
> You'll still see the:
>
> java.lang.reflect.InvocationTargetException
> ...
> Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: Defining
> new classes at run time is not supported. All classes need to be known
> at image build time.
> ...
> com.oracle.svm.core.jdk.UnsupportedFeatureError: Setting a custom
> URLStreamHandlerFactory.
>
> for Felix but that is just a print out which is harmless.
>
> regards,
>
> Karl
>
>
> [0]
> https://github.com/apache/felix-atomos/commit/ddc6688e88653591b41bda77148e6877118cf532#diff-8140292ec524a3e05ad38011530a28f34345e456c8d5f0c5132b10d5e74fa0e9
> [1] https://github.com/apache/felix-atomos/pull/45
>
>
> On Fri, Feb 12, 2021 at 12:56 AM Pierre De Rop <[email protected]>
> wrote:
> >
> > Hi Tom,
> >
> > Maybe I did something wrong, but it seems I can't run the
> > substrate.lib/target/atomos example.
> >
> > So, I'm using this graalvm version:
> >
> > openjdk version "11.0.10" 2021-01-19
> > OpenJDK Runtime Environment GraalVM CE 21.0.0 (build
> > 11.0.10+8-jvmci-21.0-b06)
> > OpenJDK 64-Bit Server VM GraalVM CE 21.0.0 (build
> 11.0.10+8-jvmci-21.0-b06,
> > mixed mode, sharing)
> >
> >
> > Now, I have built the whole project using this command, as per your
> README
> > from [1].
> >
> > ./mvnw clean install -Psubstrate -Pfelix
> >
> >
> > So, after a while, everything is built, but when I'm trying to launch the
> > following executable:
> >
> > ./atomos.examples/atomos.examples.substrate.lib/target/atomos
> >
> > then I'm getting this exception:
> >
> > java.lang.reflect.InvocationTargetException
> >        at java.lang.reflect.Method.invoke(Method.java:566)
> >        at
> >
> org.apache.felix.framework.util.SecureAction.getAccessor(SecureAction.java:1139)
> >
> >        at
> >
> org.apache.felix.framework.util.SecureAction.setAccesssible(SecureAction.java:998)
> >
> >        at
> >
> org.apache.felix.framework.ext.ClassPathExtenderFactory$DefaultClassLoaderExtender.<clinit>(ClassPathExtenderFactory.java:79)
> >
> >        at
> >
> com.oracle.svm.core.classinitialization.ClassInitializationInfo.invokeClassInitializer(ClassInitializationInfo.java:375)
> >
> >        at
> >
> com.oracle.svm.core.classinitialization.ClassInitializationInfo.initialize(ClassInitializationInfo.java:295)
> >
> >        at
> >
> org.apache.felix.framework.ExtensionManager.<clinit>(ExtensionManager.java:152)
> >
> >        at
> >
> com.oracle.svm.core.classinitialization.ClassInitializationInfo.invokeClassInitializer(ClassInitializationInfo.java:375)
> >
> >        at
> >
> com.oracle.svm.core.classinitialization.ClassInitializationInfo.initialize(ClassInitializationInfo.java:295)
> >
> >        at
> >
> org.apache.felix.framework.Felix.initializeFrameworkProperties(Felix.java:4881)
> >
> >        at org.apache.felix.framework.Felix.<init>(Felix.java:405)
> >        at
> >
> org.apache.felix.framework.FrameworkFactory.newFramework(FrameworkFactory.java:36)
> >
> >        at
> >
> org.apache.felix.atomos.impl.base.AtomosBase.newFramework(AtomosBase.java:423)
> >
> >        at org.apache.felix.atomos.Atomos.main(Atomos.java:228)
> > Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: Defining new
> > classes at run time is not supported. All classes need to be known at
> image
> > build time.
> >        at
> > com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:87)
> >        at jdk.internal.misc.Unsafe.defineAnonymousClass(Unsafe.java:246)
> >        at sun.misc.Unsafe.defineAnonymousClass(Unsafe.java:830)
> >        ... 14 more
> > com.oracle.svm.core.jdk.UnsupportedFeatureError: Setting a custom
> > URLStreamHandlerFactory.
> >        at
> > com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:87)
> >        at java.net.URL.setURLStreamHandlerFactory(URL.java:77)
> >        at
> > org.apache.felix.framework.URLHandlers.<init>(URLHandlers.java:243)
> >        at
> >
> org.apache.felix.framework.URLHandlers.registerFrameworkInstance(URLHandlers.java:633)
> >
> >        at
> >
> org.apache.felix.framework.URLHandlersActivator.start(URLHandlersActivator.java:69)
> >
> >        at
> >
> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:825)
> >
> >        at
> >
> org.apache.felix.framework.Felix$SystemBundleActivator.start(Felix.java:5173)
> >
> >        at
> >
> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:825)
> >
> >        at org.apache.felix.framework.Felix.init(Felix.java:899)
> >        at org.apache.felix.framework.Felix.init(Felix.java:648)
> >        at org.apache.felix.framework.Felix.start(Felix.java:1111)
> >        at org.apache.felix.atomos.Atomos.main(Atomos.java:229)
> >
> > And, I don't get the gogo prompt and I can't hit the gogo web console
> from
> > http://localhost:8080/system/console/bundles
> >
> > Did I wrongly build the projects ? maybe it's because I'm using the
> > latest GraalVM
> > CE 21.0.0 version while in your README file it is mentioned that GraalVM
> CE
> > 20.2.0 is required ? Notice that I'm getting the same issue when using
> the
> > -Pjava8 option. I hope I'm not raising a false alarm ?
> >
> > Now, the other  atomos.examples.substrate.maven works, but at startup, I
> > however noticed some exceptions:
> >
> >
> ./atomos.examples/atomos.examples.substrate.maven/target/native_image_build/bin/org.apache.felix.atomos.examples.substrate.maven
> >
> > java.lang.reflect.InvocationTargetException
> >        at java.lang.reflect.Method.invoke(Method.java:566)
> >        at
> >
> org.apache.felix.framework.util.SecureAction.getAccessor(SecureAction.java:1139)
> >
> >        at
> >
> org.apache.felix.framework.util.SecureAction.setAccesssible(SecureAction.java:998)
> >
> >        at
> >
> org.apache.felix.framework.ext.ClassPathExtenderFactory$DefaultClassLoaderExtender.<clinit>(ClassPathExtenderFactory.java:79)
> >
> >        at
> >
> com.oracle.svm.core.classinitialization.ClassInitializationInfo.invokeClassInitializer(ClassInitializationInfo.java:375)
> >
> >        at
> >
> com.oracle.svm.core.classinitialization.ClassInitializationInfo.initialize(ClassInitializationInfo.java:295)
> >
> >        at
> >
> org.apache.felix.framework.ExtensionManager.<clinit>(ExtensionManager.java:152)
> >
> >        at
> >
> com.oracle.svm.core.classinitialization.ClassInitializationInfo.invokeClassInitializer(ClassInitializationInfo.java:375)
> >
> >        at
> >
> com.oracle.svm.core.classinitialization.ClassInitializationInfo.initialize(ClassInitializationInfo.java:295)
> >
> >        at
> >
> org.apache.felix.framework.Felix.initializeFrameworkProperties(Felix.java:4881)
> >
> >        at org.apache.felix.framework.Felix.<init>(Felix.java:405)
> >        at
> >
> org.apache.felix.framework.FrameworkFactory.newFramework(FrameworkFactory.java:36)
> >
> >        at
> >
> org.apache.felix.atomos.impl.base.AtomosBase.newFramework(AtomosBase.java:423)
> >
> >        at org.apache.felix.atomos.Atomos.main(Atomos.java:228)
> > Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: Defining new
> > classes at run time is not supported. All classes need to be known at
> image
> > build time.
> >        at
> > com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:87)
> >        at jdk.internal.misc.Unsafe.defineAnonymousClass(Unsafe.java:246)
> >        at sun.misc.Unsafe.defineAnonymousClass(Unsafe.java:830)
> >        ... 14 more
> > com.oracle.svm.core.jdk.UnsupportedFeatureError: Setting a custom
> > URLStreamHandlerFactory.
> >        at
> > com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:87)
> >        at java.net.URL.setURLStreamHandlerFactory(URL.java:77)
> >        at
> > org.apache.felix.framework.URLHandlers.<init>(URLHandlers.java:243)
> >        at
> >
> org.apache.felix.framework.URLHandlers.registerFrameworkInstance(URLHandlers.java:633)
> >
> >        at
> >
> org.apache.felix.framework.URLHandlersActivator.start(URLHandlersActivator.java:69)
> >
> >        at
> >
> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:825)
> >
> >        at
> >
> org.apache.felix.framework.Felix$SystemBundleActivator.start(Felix.java:5173)
> >
> >        at
> >
> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:825)
> >
> >        at org.apache.felix.framework.Felix.init(Felix.java:899)
> >        at org.apache.felix.framework.Felix.init(Felix.java:648)
> >        at org.apache.felix.framework.Felix.start(Felix.java:1111)
> >        at org.apache.felix.atomos.Atomos.main(Atomos.java:229)
> > Registered Echo service from activator.
> > 2021-02-12 00:48:55.120:INFO:oejs.Server:FelixStartLevel:
> > jetty-9.4.30.v20200611; built: 2020-06-11T12:34:51.929Z; git:
> > 271836e4c1f4612f12b7bb13ef5a92a927634b0d; jvm 11.0.10
> > resource:gosh_profile: ERROR: java.lang.IllegalArgumentException: Cannot
> > coerce addcommand(Token, BundleContextImpl) to any of []
> > g! 2021-02-12 00:48:55.123:INFO:oejs.session:FelixStartLevel:
> > DefaultSessionIdManager workerName=node0
> > 2021-02-12 00:48:55.123:INFO:oejs.session:FelixStartLevel: No
> > SessionScavenger set, using defaults
> > 2021-02-12 00:48:55.123:INFO:oejs.session:FelixStartLevel: node0
> Scavenging
> > every 600000ms
> > 2021-02-12 00:48:55.123:INFO:oejsh.ContextHandler:FelixStartLevel:
> Started
> > o.e.j.s.ServletContextHandler@6384780a{/,null,AVAILABLE}
> > 2021-02-12 00:48:55.123:INFO:oejs.Server:FelixStartLevel: Started @124ms
> > 2021-02-12 00:48:55.123:INFO:oejs.session:FelixStartLevel: node0
> Scavenging
> > every 600000ms
> > 2021-02-12 00:48:55.124:INFO:oejs.AbstractConnector:FelixStartLevel:
> > Started ServerConnector@507b669c{HTTP/1.1, (http/1.1)}{0.0.0.0:8080}
> > [INFO] Started Jetty 9.4.30.v20200611 at port(s) HTTP:8080 on context
> path
> > / [minThreads=8,maxThreads=200,acceptors=1,selectors=2]
> > [INFO] Apachde Felix Http Whiteboard Service started
> > Activated:
> org.apache.felix.atomos.tests.testbundles.service.impl.EchoImpl
> > Echo service found: impl.activator hello
> > Activated:
> org.apache.felix.atomos.tests.testbundles.service.user.EchoUser
> > Activated via constructor:
> > org.apache.felix.atomos.tests.testbundles.service.user.EchoUser2
> > ERROR: Bundle org.osgi.service.component.annotations [25] Error starting
> > atomos:boot:org.osgi.service.component.annotations
> > (org.osgi.framework.BundleException: Unable to resolve org.osgi.se
> > rvice.component.annotations [25](R 25.0): missing requirement
> > [org.osgi.service.component.annotations [25](R 25.0)] osgi.unresolvable;
> > (&(must.not.resolve=*)(!(must.not.resolve=*))) Unresolv
> > ed requirements: [[org.osgi.service.component.annotations [25](R 25.0)]
> > osgi.unresolvable; (&(must.not.resolve=*)(!(must.not.resolve=*)))])
> > org.osgi.framework.BundleException: Unable to resolve
> > org.osgi.service.component.annotations [25](R 25.0): missing requirement
> > [org.osgi.service.component.annotations [25](R 25.0)] osgi.unre
> > solvable; (&(must.not.resolve=*)(!(must.not.resolve=*))) Unresolved
> > requirements: [[org.osgi.service.component.annotations [25](R 25.0)]
> > osgi.unresolvable; (&(must.not.resolve=*)(!(must.not.
> > resolve=*)))]Unable to resolve connected bundle: Unable to resolve
> > org.osgi.service.component.annotations [25](R 25.0): missing requirement
> > [org.osgi.service.component.annotations [25](R 25.
> > 0)] osgi.unresolvable; (&(must.not.resolve=*)(!(must.not.resolve=*)))
> > Unresolved requirements: [[org.osgi.service.component.annotations [25](R
> > 25.0)] osgi.unresolvable; (&(must.not.resolve=*
> > )(!(must.not.resolve=*)))]
> >
> >        at
> > org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398)
> >        at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
> >        at
> > org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566)
> >        at
> >
> org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
> >
> >        at java.lang.Thread.run(Thread.java:834)
> >        at
> >
> com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:519)
> >
> >        at
> >
> com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:192)
> >
> >
> >
> > Despite of the exceptions, the substrate.maven example works fine: I can
> > get the gogo prompt and the webconsole also works.
> >
> > [1]
> >
> https://github.com/apache/felix-atomos/blob/master/atomos.examples/SUBSTRATE.md
> >
> > thanks;
> >
> > regards
> > /pierre
> >
> >
> >
> > On Tue, Feb 9, 2021 at 7:38 PM Thomas Watson <[email protected]> wrote:
> >
> > > Hi,
> > >
> > > I did publish the new snapshots of atomos to
> > > https://repository.apache.org/content/repositories/snapshots in case
> you
> > > want to try them from there. I also updated my simplistic example of
> gogo
> > > w/ atomos at https://github.com/tjwatson/atomos-examples
> > >
> > > Tom
> > >
> > > On Tue, Feb 9, 2021 at 7:14 AM Jean-Baptiste Onofre <[email protected]>
> > > wrote:
> > >
> > > > Thanks Tom for the reminder !
> > > >
> > > > I should have time to test by the end of the week.
> > > >
> > > > Regards
> > > > JB
> > > >
> > > > > Le 9 févr. 2021 à 02:01, Thomas Watson <[email protected]> a écrit
> :
> > > > >
> > > > > Hi,
> > > > >
> > > > > I would like to give you a chance to provide feedback before
> calling a
> > > > vote
> > > > > for a 1.0 release of Atomos.  I've done a few modifications over
> the
> > > past
> > > > > week or so and have improved the project readme to make it easier
> to
> > > > > understand what Atomos is and how to use it:
> > > > >
> > > > > https://github.com/apache/felix-atomos
> > > > >
> > > > > Please let me know what you think and provide any improvements
> that you
> > > > > think may be needed before we call for a 1.0 release.
> > > > >
> > > > > Thanks
> > > > >
> > > > > Tom
> > > >
> > > >
> > >
>
>
>
> --
> Karl Pauls
> [email protected]
>

Reply via email to