You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "John Dunlap (JIRA)" <ji...@apache.org> on 2010/09/23 17:58:32 UTC

[jira] Updated: (FELIX-2618) Bundle resolution causes CNFE for java.lang.System

     [ https://issues.apache.org/jira/browse/FELIX-2618?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Dunlap updated FELIX-2618:
-------------------------------

    Attachment: dictionary-service.zip

Attached you will find a maven project for the bundle that is throwing the error. To reproduce,
1) extract the zip
2) run "clean package"
3) copy the resulting jar into the felix bundles directory
4) run felix

-John

> Bundle resolution causes CNFE for java.lang.System
> --------------------------------------------------
>
>                 Key: FELIX-2618
>                 URL: https://issues.apache.org/jira/browse/FELIX-2618
>             Project: Felix
>          Issue Type: Bug
>          Components: Framework
>    Affects Versions: framework-3.0.2
>         Environment: Fedora 11 Linux x86_64 Java 1.6.0_13-b03 Felix Framework 3.0.2
>            Reporter: John Dunlap
>            Priority: Minor
>         Attachments: dictionary-service.zip
>
>
> If I attempt to import the package org.apache.felix.shell in my bundle manifest I get the following error,
> ERROR: Error starting file:/home/jddunlap/apache-felix/felix-framework-3.0.2/bundle/dictionary-service-1.0-SNAPSHOT.jar (org.osgi.framework.BundleException: Unresolved constraint in bundle [1]: Unable to resolve 1.0: missing requirement [1.0] package; (package=org.osgi.framework.shell))
> org.osgi.framework.BundleException: Unresolved constraint in bundle [1]: Unable to resolve 1.0: missing requirement [1.0] package; (package=org.osgi.framework.shell)
> 	at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3409)
> 	at org.apache.felix.framework.Felix.startBundle(Felix.java:1709)
> 	at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1143)
> 	at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)
> 	at java.lang.Thread.run(Thread.java:619)
> bundle://5.0:1/gosh_profile:15.20: ClassNotFoundException: java.lang.System
> java.lang.ClassNotFoundException: java.lang.System
> 	at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1591)
> 	at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:887)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.felix.gogo.runtime.Reflective.method(Reflective.java:136)
> 	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:465)
> 	at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:335)
> 	at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
> 	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:184)
> 	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:121)
> 	at org.apache.felix.gogo.runtime.Closure.eval(Closure.java:265)
> 	at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:307)
> 	at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
> 	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:184)
> 	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:121)
> 	at org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:78)
> 	at org.apache.felix.gogo.shell.Shell.source(Shell.java:186)
> 	at org.apache.felix.gogo.shell.Shell.gosh(Shell.java:106)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.felix.gogo.runtime.Reflective.method(Reflective.java:136)
> 	at org.apache.felix.gogo.runtime.CommandProxy.execute(CommandProxy.java:82)
> 	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:421)
> 	at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:335)
> 	at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
> 	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:184)
> 	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:121)
> 	at org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:78)
> 	at org.apache.felix.gogo.shell.Activator.run(Activator.java:72)
> 	at java.lang.Thread.run(Thread.java:619)
> Caused by: org.osgi.framework.BundleException: Unresolved constraint in bundle [1]: Unable to resolve 1.0: missing requirement [1.0] package; (package=org.osgi.framework.shell)
> 	at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3409)
> 	at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1584)
> 	... 33 more
> The problem appears to be in the manifest. If I remove
> "org.apache.felix.shell" from the Import-Package manifest entry, the
> error goes away. If I put it back the error returns. For example,
> changing this,
> "Import-Package: org.osgi.framework,org.apache.felix.shell"
> to this,
> "Import-Package: org.osgi.framework"
> makes the error go away. It does not seem to matter if I implement
> service interfaces from that package. The import itself appears to
> trigger the error.
> Issue created as requested by Richard S. Hall
> Cheers!
> -John

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.