2017-08-30 100 views
0

我已經加入的gradle對外依存度和incude在bnd.bnd文件, 當我部署束得到以下錯誤獲取錯誤的Liferay 7

07:28:41,922 WARN [fileinstall-/home/bhagwan/televisory-benchmark-revamp/liferay-ce-portal-7.0-ga4/osgi/modules][org_apache_felix_fileinstall:103] Error while starting bundle: file:/home/bhagwan/televisory-benchmark-revamp/liferay-ce-portal-7.0-ga4/osgi/modules/com.compass.api.jar 
org.osgi.framework.BundleException: Could not resolve module: com.compass.api [533]_ Unresolved requirement: Import-Package: com.sun.javadoc_ [Sanitized] 
    at org.eclipse.osgi.container.Module.start(Module.java:429) 
    at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:402) 
    at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1253) 
    at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1225) 
    at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:512) 
    at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:361) 
    at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:312) 
07:28:41,922 IN 

包括LIB在如下BND:

-includeresource:\ 
    lib/poi-3.11.jar=poi-3.11.jar,\ 
    lib/poi-ooxml-3.11.jar=poi-ooxml-3.11.jar,\ 
    lib/commons-codec-1.9.jar=commons-codec-1.9.jar,\ 
    lib/poi-ooxml-schemas-3.11.jar=poi-ooxml-schemas-3.11.jar,\ 
    lib/xmlbeans-2.6.0.jar=xmlbeans-2.6.0.jar,\ 
    lib/stax-api-1.0.1.jar=stax-api-1.0.1.jar,\ 
    lib/junit-4.11.jar=junit-4.11.jar 



Bundle-ClassPath:\ 
    .,\ 
    lib/poi-3.11.jar,\ 
    lib/poi-ooxml-3.11.jar,\ 
    lib/commons-codec-1.9.jar,\ 
    lib/poi-ooxml-schemas-3.11.jar,\ 
    lib/xmlbeans-2.6.0.jar,\ 
    lib/stax-api-1.0.1.jar,\ 
    lib/junit-4.11.jar 

回答

1

添加的lib(s)必須對包有依賴關係,因此Bnd會爲該包添加一個導入。你可以試着讓依賴可選通過添加以下到bnd.bnd文件:

Import-Package: the.package.name;resolution:=optional, *

注意,最終*很重要,這樣BND將繼續產生對其他包所需的包裝的產品進口。

+0

謝謝你的回答,現在我得到以下錯誤 未解決的需求:進口包裝:com.sun.msv.datatype_ 我做了什麼: 進口配套:\ com.sun.javadoc ,\ org.appache.poi;分辨率:=可選,* 更多嘗試用 進口包裝:\ com.sun.javadoc,\ org.appache.poi;分辨率:=可選,* 我在servicebuilder-api中添加了所有這些依賴項, 謝謝 –

+0

@ user1471745如果這解決了您的問題,請考慮點擊「接受」答案 - 這就是爲什麼 –

+0

我已通過添加以下依賴關係爲Apache poi解決了此問題 compile(group:「org.apache.poi 「,name:」poi「,版本:」3.13「){transitive = false} \t compile(group:」org.apache.poi「,name:」poi-ooxml「,version:」3.13「){transitive = false} \t compile(group:'org.apache.poi',name:'poi-ooxml-schemas',version:'3.13'){transitive = false} compile(group:'org.apache.xmlbeans', name:'xmlbeans',版本:'2.6.0'){transitive = false} –