Hi, I fixed on master and karaf-4.2.x branch.
I'm also adding new Mojo: dockerfile, docker on those branch. So, it will be included in Karaf 4.3.0 and 4.2.5. In the mean time, you can use 4.3.0-SNAPSHOT and 4.2.5-SNAPSHOT. Regards JB On 20/03/2019 15:49, Michał Dąbrowski wrote: > Hi, > > thank you for your reply. Which Karaf version contains the fix? > We ended up using Karaf 4.2.3 dynamic version, at least for now. > > Michał Dąbrowski > On 20 Mar 2019, 15:28 +0100, Jean-Baptiste Onofré <[email protected]>, wrote: >> Hi Michal, >> >> just to let you know that I fixed the issue (the export package version >> was not correct in staticcm for scr). >> >> I'm preparing a full blog and improvements around static distro. >> >> Regards >> JB >> >> On 04/02/2019 15:32, Michal Dabrowski wrote: >>> I used wysiwyg "raw text" formatter and unfortunately all quotes went >>> blank. >>> I have edited my post but probably you have not seen it in mail. >>> >>> You can reproduce it by running Karaf 4.2.2 karaf-profile-example-static >>> (https://github.com/apache/karaf/tree/karaf-4.2.2/examples/karaf-profile-example/karaf-profile-example-static) >>> >>> During startup it prints in logs: >>> >>> 2019-02-04T15:17:35,403 | ERROR | FelixDispatchQueue | metatype >>> | 35 - org.apache.felix.metatype - 1.2.2 | FrameworkEvent ERROR - >>> org.apache.felix.metatype >>> org.osgi.framework.ServiceException: Service factory exception: >>> org/osgi/service/cm/ManagedService >>> at >>> org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:352) >>> ~[?:?] >>> at >>> org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:247) >>> ~[?:?] >>> at >>> org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:350) >>> ~[?:?] >>> at org.apache.felix.framework.Felix.getService(Felix.java:3737) >>> ~[?:?] >>> at >>> org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:470) >>> ~[?:?] >>> at >>> org.apache.felix.metatype.internal.ManagedServiceTracker.addingService(ManagedServiceTracker.java:52) >>> ~[?:?] >>> at >>> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) >>> ~[?:?] >>> at >>> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) >>> ~[?:?] >>> at >>> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) >>> ~[?:?] >>> at >>> org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) >>> ~[?:?] >>> at >>> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901) >>> ~[?:?] >>> at >>> org.apache.felix.framework.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:990) >>> ~[?:?] >>> at >>> org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:838) >>> ~[?:?] >>> at >>> org.apache.felix.framework.EventDispatcher.fireServiceEvent(EventDispatcher.java:545) >>> ~[?:?] >>> at >>> org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4595) ~[?:?] >>> at org.apache.felix.framework.Felix.registerService(Felix.java:3587) >>> ~[?:?] >>> at >>> org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:348) >>> ~[?:?] >>> at >>> org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:322) >>> ~[?:?] >>> at >>> org.apache.felix.scr.impl.config.ScrConfigurationImpl.start(ScrConfigurationImpl.java:122) >>> ~[?:?] >>> at org.apache.felix.scr.impl.Activator.start(Activator.java:100) >>> ~[?:?] >>> at >>> org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:697) >>> ~[?:?] >>> at org.apache.felix.framework.Felix.activateBundle(Felix.java:2240) >>> ~[?:?] >>> at org.apache.felix.framework.Felix.startBundle(Felix.java:2146) >>> ~[?:?] >>> at >>> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1373) >>> ~[?:?] >>> at >>> org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) >>> ~[?:?] >>> at java.lang.Thread.run(Thread.java:748) [?:?] >>> Caused by: java.lang.NoClassDefFoundError: >>> org/osgi/service/cm/ManagedService >>> at java.lang.ClassLoader.defineClass1(Native Method) ~[?:?] >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:763) ~[?:?] >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2410) >>> ~[?:?] >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2194) >>> ~[?:?] >>> at >>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1607) >>> ~[?:?] >>> at >>> org.apache.felix.framework.BundleWiringImpl.access$200(BundleWiringImpl.java:80) >>> ~[?:?] >>> at >>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:2053) >>> ~[?:?] >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?] >>> at >>> org.apache.felix.scr.impl.config.ScrManagedServiceServiceFactory.getService(ScrManagedServiceServiceFactory.java:47) >>> ~[?:?] >>> at >>> org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:347) >>> ~[?:?] >>> ... 25 more >>> Caused by: java.lang.ClassNotFoundException: >>> org.osgi.service.cm.ManagedService not found by org.apache.felix.scr [36] >>> >>> >>> I think it is because: >>> >>> Apache Felix Declarative Services (36) bundle imports: >>> >>> Import-Package = >>> org.osgi.service.cm;resolution:=optional;version="[1.6,2)", >>> (...) >>> >>> and Static ConfigAdmin headers: >>> >>> Apache Karaf :: OSGi Services :: Static ConfigAdmin (5) >>> ------------------------------------------------------- >>> Build-Jdk = 1.8.0_144 >>> Manifest-Version = 1.0 >>> >>> Bundle-Activator = org.apache.karaf.services.staticcm.Activator >>> Bundle-Description = Static ConfigAdmin Service >>> Bundle-DocURL = http://karaf.apache.org/ >>> Bundle-License = https://www.apache.org/licenses/LICENSE-2.0.txt >>> Bundle-ManifestVersion = 2 >>> Bundle-Name = Apache Karaf :: OSGi Services :: Static ConfigAdmin >>> Bundle-SymbolicName = org.apache.karaf.services.staticcm >>> Bundle-Vendor = The Apache Software Foundation >>> Bundle-Version = 4.2.2 >>> >>> Export-Service = >>> org.osgi.service.cm.ConfigurationAdmin >>> Require-Capability = >>> osgi.ee;filter:=(&(osgi.ee=JavaSE)(version=1.8)) >>> >>> DynamicImport-Package = >>> org.osgi.service.log;version="[1.3,2)" >>> Export-Package = >>> org.osgi.service.cm;uses:=org.osgi.framework;version=1.5 >>> Import-Package = >>> org.osgi.service.cm;version="[1.5,2)", >>> org.osgi.framework;version="[1.8,2)", >>> org.osgi.util.tracker;version="[1.5,2)" >>> >>> Static ConfigAdmin provides org.osgi.service.cm 1.5 version but Felix scr >>> needs 1.6. >>> >>> >>> >>> -- >>> Sent from: http://karaf.922171.n3.nabble.com/Karaf-User-f930749.html >>> >> >> -- >> Jean-Baptiste Onofré >> [email protected] >> http://blog.nanthrax.net >> Talend - http://www.talend.com -- Jean-Baptiste Onofré [email protected] http://blog.nanthrax.net Talend - http://www.talend.com
