Сборка Java Ant с внешними библиотеками - PullRequest
1 голос
/ 19 мая 2011

У меня есть следующая цель в скрипте mz ant для создания моего java-приложения

<target name="jar" depends="compile" description="generate jar">
    <jar jarfile="${build.dir}/jar/final.jar" basedir="${build.dir}/classes">
        <manifest>
            <attribute name="Main-Class" value="my.package.Main" />
        </manifest>
    </jar>
</target>

Что мне нужно, так это каким-то образом включить log4j в jar, поскольку он запускает NoClassDefFoundError при работе с

java -jar final.jar

Каков наилучший способ достичь этого?

Лучшее, Будет

Ответы [ 2 ]

4 голосов
/ 20 мая 2011

Я могу решить мою проблему с помощью zipgroupfileset

    <jar jarfile="${build.dir}/jar/final.jar">
        <fileset dir="${build.dir}/classes" />
        <zipgroupfileset dir="${lib.dir}" includes="*.jar"/>
        <manifest>
            <attribute name="Main-Class" value="my.pacakge.Main" />
        </manifest>
    </jar>
1 голос
/ 19 мая 2011

попробуйте добавить включает в себя настройки параметров, например

includes="<path-to-log4j-folder>/*.jar"

Подробный синтаксис: здесь .

...