Java org.osgi.framework.BundleException:无法解决:缺少需求:osgi.willing.package;(osgi.willing.package=org.json)

Java org.osgi.framework.BundleException:无法解决:缺少需求:osgi.willing.package;(osgi.willing.package=org.json),java,maven,osgi,apache-karaf,apache-felix,Java,Maven,Osgi,Apache Karaf,Apache Felix,我是Java/karaf4.0.9/Maven/Pom/Camel的新手,我无法解决这个问题 在pom.xml文件中的Json部分,我在这里更改了很多,但没有任何用处 <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <v

我是Java/karaf4.0.9/Maven/Pom/Camel的新手,我无法解决这个问题

pom.xml
文件中的Json部分,我在这里更改了很多,但没有任何用处

            <dependency>
                <groupId>org.json</groupId>
                <artifactId>json</artifactId>
                <version>20151123</version>
            </dependency>
java文件

    import org.apache.camel.Exchange;
    import org.apache.camel.Processor;
    import org.json.JSONObject;

    public class EmailProcessor implements Processor {
        public void process(Exchange exchange) throws Exception {
            String RequestPayload = exchange.getIn().getBody(String.class);
            JSONObject obj = new JSONObject(RequestPayload);
            String mail_id_to = obj.get("email").toString();
            String mail_subject = obj.get("subject").toString();
            String mail_content = obj.get("content").toString();

            System.out.print(mail_id_to);
            System.out.print(mail_subject);
            System.out.print(mail_content);
        }
    }
错误


我如何修复此问题?

您的构建看起来很棒。所以就我所知,您生成了一个有效的包

现在,在运行时,您必须提供项目所依赖的所有捆绑包。错误消息告诉您包需要一个包
org.json
。因此,您需要安装导出此包的bunde

您可以尝试使用此软件包:

 install -s mvn:org.json/json/20180813

您还应该考虑在构建过程中创建一个特性文件,允许在一个Go中安装包含依赖项的代码。

谢谢您的响应,我使用Spring工具套件,在那里我可以安装它……您在KARAF shell中运行安装命令。您是如何安装自己的捆绑包的?
    ERROR: Bundle PaxelESBNotification [226] Error starting file:/home/ubuntu/Software/service_mix/apache-servicemix-7.0.1/deploy/PaxelESBNotification-0.0.1-SNAPSHOT.jar (org.osgi.framework.BundleException: Unable to resolve PaxelESBNotification [226](R 226.0): missing requirement [PaxelESBNotification [226](R 226.0)] osgi.wiring.package; (osgi.wiring.package=org.json) Unresolved requirements: [[PaxelESBNotification [226](R 226.0)] osgi.wiring.package; (osgi.wiring.package=org.json)])
    org.osgi.framework.BundleException: Unable to resolve PaxelESBNotification [226](R 226.0): missing requirement [PaxelESBNotification [226](R 226.0)] osgi.wiring.package; (osgi.wiring.package=org.json) Unresolved requirements: [[PaxelESBNotification [226](R 226.0)] osgi.wiring.package; (osgi.wiring.package=org.json)]
        at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4132)
        at org.apache.felix.framework.Felix.startBundle(Felix.java:2117)
        at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1371)
        at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
        at java.lang.Thread.run(Thread.java:748)
 install -s mvn:org.json/json/20180813