2017-08-30 103 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} –