当我试图运行OSGI包时出错。任何线索都会很感激的。
ERROR: Bundle com.springsource.org.apache.axis [15] Error starting mvn:
org.apache.axis/com.springsource.org.apache.axis/1.4.0 (
org.osgi.framework.BundleException: Uses constraint violation. Unable to resolve
bundle revision com.springsource.org.apache.axis [15.0] because it is exposed to
package 'javax.activation' from bundle revisions com.springsource.javax.activation
[14.0] and org.apache.felix.framework [0] via two dependency chains.链1:
com.springsource.org.apache.axis [15.0] import: (&(osgi.wiring.package=
javax.activation)(version>=1.1.0)(!(version>=2.0.0))) | export:
osgi.wiring.package=javax.activation com.springsource.javax.activation [14.0]链2:
com.springsource.org.apache.axis [15.0] import: (&(osgi.wiring.package=
javax.xml.soap)(version>=0.0.0)) | export: osgi.wiring.package=javax.xml.soap;
uses:=javax.activation export: osgi.wiring.package=javax.activation
org.apache.felix.framework [0])
org.osgi.framework.BundleException: Uses constraint violation.
Unable to resolve bundle revision
com.springsource.org.apache.axis [15.0] because it is exposed to package
'javax.activation' from bundle revisions com.springsource.javax.activation [14.0]
and org.apache.felix.framework [0] via two dependency chains.链1:
com.springsource.org.apache.axis [15.0] import: (&(osgi.wiring.package=javax.activation)(version>=1.1.0)(!(version>=2.0.0))) | export: osgi.wiring.package=javax.activation com.springsource.javax.activation [14.0]
链2:
com.springsource.org.apache.axis [15.0] import: (&(osgi.wiring.package=javax.xml.soap)(version>=0.0.0)) | export: osgi.wiring.package=javax.xml.soap; uses:=javax.activation export: osgi.wiring.package=javax.activation org.apache.felix.framework [0] at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:3980) at org.apache.felix.framework.Felix.startBundle(Felix.java:2037) at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1291) at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:304) at java.lang.Thread.run(Thread.java:745)
发布于 2016-03-18 07:48:33
从捆绑包列表中删除com.springsource.javax.activation包。如果由于一个特殊版本而需要这个特殊的javax.activation包,则需要确保您自己的导入对于该版本是正确的。既然您使用的是com.Spring源代码.*包,那么这些包已经非常“旧”,不再维护了,我建议您切换到:
( A)官方的jars (如javax.activation),其中最新版本已经是OSGi就绪包
( B)使用ServiceMix包装包,ServiceMix团队提供了许多OSGi准备好的包,而这些包是始发方无法提供的。
https://stackoverflow.com/questions/36047955
复制相似问题