2017-09-23 47 views
0

我開發上opendaylight碳的應用程序(基於Karaf)。我需要在我的包中使用庫(特別是dnsjava)。我如何去解決這個問題?opendaylight:使用外部jar文件

我試過,沒有工作的情況如下:

  1. 在我的功能/ pom.xml中,我包括我的JAR文件MVN依賴。

  2. 在我的功能/ src目錄/主/特徵/ features.xml,我添加了一個包:

    <bundle>wrap:mvn:dnsjava/dnsjava/${dnsjava.version}</bundle> 
    

然而,當我去開始我的功能,我仍然有一個錯誤:

Error executing command: Error executing command on bundles: 
Unable to execute command on bundle 278: The bundle "gov.nist.sdnmud.impl_0.1.0.SNAPSHOT [278]" could not be resolved. Reason: Missing Constraint: Import-Package: org.xbill.DNS; version="[2.1.0,3.0.0)" 

感謝您的幫助。

回答

0

我不是專家,但如果產品無法在罐子裏,爲什麼你已經添加了「包裝」前綴,這很可能是OSGi的屬性,那麼你必須手動設置所需要的OSGi的性質feature.xml依賴線,採用奇怪的微格式語法。

在我們的環境,我們必須做這樣的事情:

wrap:mvn:<group>/<artifact>/<version>$Bundle-SymbolicName=<bundlename>&amp;Bundle-Version=<version> 

這個問題沒有什麼關係opendaylight。

+0

我做你的建議。但是,我仍然無法啓動dnsjava包。誤差上執行束命令: \t無法在束277執行命令:束「dnsjava_2.1.8 [277]」不能被解析。原因:Missing Constraint:Import-Package:android.os;版本= 「0.0.0」 – LostInTheFrequencyDomain