OSGi对org的依赖.Beanio没有解决



我正在尝试OSGify我的项目。

我使用Fuse jboss-fuse-6.2.1.redhat-084,如果我查看包的osgi:headers,我得到红色错误org.beanio

Import-Package =
    com.thoughtworks.xstream;version="[1.4,2)",
    javax.activation,
    javax.mail;version="[1.4,2)",
    javax.mail.internet;version="[1.4,2)",
    javax.xml.bind,
    org.apache.activemq.camel.component,
    org.apache.camel;version="[2.15,3)",
    org.apache.camel.builder;version="[2.15,3)",
    org.apache.camel.dataformat.bindy.fixed,
    org.apache.camel.spring.spi;version="[2.15,3)",
    org.apache.cxf.interceptor;version="[3.0,4)",
    org.apache.log4j;version="[1.2,2)",
    org.beanio;version="[2.1,3)",
    (others)
错误:

osgi.wiring.package;(, (osgi.wiring.package = org.beanio)(> = 2.1.0版)(!(> = 3.0.0版本))))

我自己没有明确地导入beanio:它从org.jboss.fuse.bom中获得这个熔断器。camel-beanio version2.15.1.redhat-621084,它使用org.beanio v2.1.0

    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-beanio</artifactId>
    </dependency>

我已经grep搜索了osgi:classes,没有使用v3.0。而且,v3.0甚至还不存在。所以,我不知道这个"[2.1,3)"是从哪里来的。

我找出了如何指定2.1.0,但是它只是抱怨找不到2.1.0。

我该怎么做?没有输出2.1.0。但是我不能从Import-Package中删除它,因为*在搜索代码后包含了它。

正如您自己所说:" camel-beanio版本是2.15.1。Redhat-621084,它使用org。beanio v2.1.0" .

你只是需要这个在你的诗:

<dependency>
    <groupId>org.beanio</groupId>
    <artifactId>beanio</artifactId>
    <version>2.1.0</version>
</dependency>

这是在Maven中心,所以它应该工作。

正如我在评论中提到的,您得到的错误消息告诉您需要版本>= 2.1.0而非>= 3.0的org.beanio包。

上面的依赖项提供了这个包,正如你在这里看到的。

然而,这似乎不是一个OSGi包…所以你需要把它括起来

features.xml中包含如下依赖项:

<bundle>mvn:org.beanio/beanio/${version}</bundle>

然后,输入features:refreshurl command并安装bundle

相关内容

最新更新