Search code examples
androidosgiclassloaderandroid-4.2-jelly-beanapache-felix

Apache Felix on Android 4.1 / 4.2 (JellyBean)


Has anyone tried to run Apache Felix on Android 4.1 oder 4.2 ? To me, it look as if something has been changed on the android classloader and now it no longer works.

i start apache felix programmatically as follow:

  config.put("felix.bootdelegation.implicit", "false");
  config.put("felix.service.urlhandlers","false"); 
  ... 
  felix.start();

my bundle is also "dexed" !

I'm getting this error:

03-04 23:38:51.360: W/System.err(1431): org.osgi.framework.BundleException: Activator start error in bundle org.apache.felix.shell.remote [25].
...
03-04 23:38:51.360: W/System.err(1431):     at dalvik.system.NativeStart.main(Native Method)
03-04 23:38:51.360: W/System.err(1431): Caused by: java.lang.UnsupportedOperationException: can't load this type of class file
03-04 23:38:51.360: W/System.err(1431):     at java.lang.VMClassLoader.defineClass(Native Method)
03-04 23:38:51.360: W/System.err(1431):     at java.lang.ClassLoader.defineClass(ClassLoader.java:292)
03-04 23:38:51.360: W/System.err(1431):     at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2128)
03-04 23:38:51.360: W/System.err(1431):     at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1432)
03-04 23:38:51.360: W/System.err(1431):     at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)
03-04 23:38:51.360: W/System.err(1431):     at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843)
03-04 23:38:51.360: W/System.err(1431):     at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
03-04 23:38:51.360: W/System.err(1431):     at org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1317)
03-04 23:38:51.360: W/System.err(1431):     at org.apache.felix.framework.Felix.createBundleActivator(Felix.java:4170)
03-04 23:38:51.360: W/System.err(1431):     at org.apache.felix.framework.Felix.activateBundle(Felix.java:1972)
03-04 23:38:51.360: W/System.err(1431):     ... 15 more

Can somebody confirm that ? Is their a solution ? Maybe their is a property that has to be change in apache felix ?!?!


Solution

  • I've added a new comment to the bug report system: https://issues.apache.org/jira/browse/FELIX-3854?focusedCommentId=13594757&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13594757