[英]Building an osgi bundle with rome-1.0 for Adobe CQ
我正在尝试使用rome生成RSS / Atom提要的Adobe CQ的osgi包。 该捆绑包是使用“ maven-bundle-plugin(felix)构建的。我可以在没有任何错误的情况下构建捆绑包。但是在将其部署到CQ中的同时,使用felix控制台却出现了错误,请找到跟踪信息下面。
com.acme.wcm.cq.acme-corporate-services [310]: Unable to resolve 310.0: missing requirement [310.0] osgi.wiring.package; (osgi.wiring.package=oracle.xml.parser)) org.osgi.framework.BundleException: Unresolved constraint in bundle com.acme.wcm.cq.acme-corporate-services [310]: Unable to resolve 310.0: missing requirement [310.0] osgi.wiring.package; (osgi.wiring.package=oracle.xml.parser)
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:3962)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2025)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:942)
at org.apache.felix.webconsole.internal.core.InstallHelper.doRun(InstallHelper.java:67)
at org.apache.felix.webconsole.internal.core.BaseUpdateInstallHelper.doRun(BaseUpdateInstallHelper.java:89)
at org.apache.felix.webconsole.internal.core.BaseUpdateInstallHelper.run(BaseUpdateInstallHelper.java:121)
at java.lang.Thread.run(Unknown Source)
在尝试解决此问题时,我们发现在rome的pom中,在“导入包”部分中有对oracle。*的引用。
<Import-Package> oracle.*;resolution:=optional,org.jaxen*;resolution:=optional,org.jdom.*;resolution:=optional,*</Import-Package>
因此,在我们的捆绑软件中,如果在捆绑软件的pom中添加一条指令以避免oracle依赖,
<Import-Package>!oracle.*</Import-Package>
它阻止了所有其他必需的进口。 在这种情况下,我们是否需要在“导入包”部分中指定所有必需的导入? 请给我们一些指示来解决这个问题。
感谢和问候,圣
您需要添加*
来指示OSGi导入所有其他依赖项:
<Import-Package>!oracle.*,*</Import-Package>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.