我是新來的maven。由於缺少導入包的約束,導致無法解析包依賴項,如何使用maven在osgi包中添加jar依賴項?
我想在我的opendaylight控制器項目中導入jar依賴項(com.jcraft.jsch
)。代碼編譯成功。但是,當控制器運行時,會引發以下錯誤。
ENTRY org.opendaylight.controller.samples.ssr 4 0 2013年10月11日10:25:14.624 MESSAGE FrameworkEvent ERROR STACK 0 org.osgi.framework.BundleException:束「org.opendaylight.controller.samples.ssr_0.4.0.SNAPSHOT [36]」無法解析。原因:缺少約束:導入包:com.jcraft.jsch;版本=「0.0.0」 at org.eclipse.osgi.framework.internal.core.AbstractBundle.getResolverError(AbstractBundle.java:1332) at org.eclipse.osgi.framework.internal.core.AbstractBundle.getResolutionFailureException(AbstractBundle .java:1316) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:323) at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java :390) at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1176) at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559 ) at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544) at org.eclipse.osgi.framewor k.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457) at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243) at org.eclipse.osgi.framework。在org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1) 處的org.eclipse.osgi.framework.eventmgr處的internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438) 。 EventManager.dispatchEvent(EventManager.java:230) at org.eclipse.osgi.framework.eventmgr.EventManager $ EventThread.run(EventManager.java:340) 2013-10-11 10:25:14.627 IST [org.opendaylight .controller.logging.bridge.internal.LogListenerImpl @ 190c63b2] ERROR ooclogging.bridge.OSGI2SLF4J - Bundle:org.opendaylight.controller.samples.ssr消息:FrameworkEvent錯誤異常:org.osgi .framework.BundleException:捆綁包「org.opendaylight.controller.samples.ssr_0.4.0.SNAPSHOT [36]」無法解析。原因:缺少約束:導入包:com.jcraft.jsch;版本=「0.0.0」
我已經導入了該包。包中org.opendaylight.controller.samples.ssr是我自己添加的。基本上,我修改了樣本中的一個包。 問題是我想在這個包中的一個類中導入一個jar依賴項com.jcraft.jsch。但是導入這個jar有問題。
在過去的幾個星期裏,我一直在這個問題之後醞釀。任何建議或解決方案,請。提前致謝。
軟件包org.opendaylight.controller.samples.ssr在任何軟件包中都不可用,或者如果可用,它不會被導出。 –
謝謝你:)你能再看一遍嗎?我修改了這個查詢一點點.. – user793735
你可以telnet到春分系統上嗎?如果是,那麼命令「packages com.jcraft.jsch」會說什麼?我認爲它不在OSGi容器中。如果它在那裏,我會感到驚訝。它可能位於你的一個罐子中,但是你確定它已列在Export-Package Manifest標題中?如果它位於該jar中並且列出了該軟件包,那麼該軟件包是否處於ACTIVE狀態(控制檯中的ss命令)? –