bndwrap ant任务不起作用

时间:2012-10-18 18:48:18

标签: ant osgi bnd

我正在尝试为最新版本的jTDS创建一个OSGi包装器。我正在尝试将包装过程添加到现有的jTDS构建过程(基于Ant)。我已经下载了最新的bnd.jar并将以下内容添加到jTDS build.xml中:

<taskdef resource="aQute/bnd/ant/taskdef.properties" classpath="bnd.jar"/>
<bndwrap trace="true" definitions="${basedir}/bnd" output="${build}/${ant.project.name}-${version}.osgi.jar">
    <fileset dir="${build}" includes="*.jar"/>
</bndwrap>

我还定义了一个非常简单的bnd定义:

version=1.2.6
Export-Package: net.sourceforge.jtds*;version=${version}
Bundle-Version: ${version}
Bundle-Name: net.sourceforge.jtds

当我在Ant中执行dist任务时,应该使用正确的OSGi清单创建一个JAR。它正在创建另一个JAR,但清单与原始版本相同。

如果我直接对bnd JAR执行相同的换行:

java -jar bnd.jar wrap -p bnd\jtds-1.2.6.bnd -o build\jtds-1.2.6.osgi.jar build\jtds-1.2.6.jar

我得到了正确的OSGi清单。

Ant构建期间出了什么问题?

1 个答案:

答案 0 :(得分:0)

最新版本的bnd似乎是一个问题,找到here。 Ant WrapTask被重新调整了一些,似乎没有用(可能它只是配置错误;文档没有跟上代码)。

我在版本1.50.0中删除了,所有内容都通过bnd.jar和Ant完成。