Osgi 无法解析javax.transaction.xa partial=true

Osgi 无法解析javax.transaction.xa partial=true,osgi,apache-commons,apache-karaf,apache-commons-dbcp,Osgi,Apache Commons,Apache Karaf,Apache Commons Dbcp,我试图使用apache commons中的dbcp2来设置数据源,但我无法安装commons-dpcp2捆绑包,因为它抱怨缺少javax.transaction.xa包版本>=1.1.0必需:=partial;部分=真 这个确切的版本是通过karaf的事务特性(在4.2.1上)在运行时安装的(尽管没有强制的:=partial;partial=true指令或标志或任何你想称之为它的东西) 因此,似乎我无法安装dbcp2并在没有黑客攻击的情况下使用它。。。有没有人有一个“正常”的解决方案,或者我必须

我试图使用apache commons中的dbcp2来设置数据源,但我无法安装commons-dpcp2捆绑包,因为它抱怨缺少javax.transaction.xa包版本>=1.1.0必需:=partial;部分=真

这个确切的版本是通过karaf的事务特性(在4.2.1上)在运行时安装的(尽管没有强制的:=partial;partial=true指令或标志或任何你想称之为它的东西)

因此,似乎我无法安装dbcp2并在没有黑客攻击的情况下使用它。。。有没有人有一个“正常”的解决方案,或者我必须像柯南一样撕开衬衫,重新包装dbcp2


另外,如果apache packaging的任何人偶然发现了这一点,为什么要用如此“有趣”的方式进行打包呢???为什么附加这些临时标志,最终什么都不做??退出。

真是巧合;)-它是固定的,理论上由

解释,但这个标志不应该出现在dbcp包上。这取决于我如何管理我的运行时,以及哪些包提供了哪些包,javax.transaction.*或其他什么。严格地说,从dbcp的角度来看,这是或应该是无关的。。。“我需要API中的PackageX版本X.X”是它需要声明的全部内容。。。假设包X是在标准API中定义的,我同意,DBCP2应该更好地管理OSGi清单,但根据我的经验,我知道很多库添加了“OSGi支持”,作为OSGi社区的一次性贡献,然后它保持原样。。。