Я пытаюсь создать оболочку OSGi для новейшей версии jTDS. Я пытаюсь добавить процесс упаковки в существующий процесс сборки jTDS (на основе Ant). Я скачал последнюю bnd.jar и добавил следующее к jTDS build.xml:bndwrap ant task not working
<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
Выполнения dist
Задача в Ant, это должно быть создание JAR с соответствующим манифеста OSGi. Это создает другой 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?