как добавить полную папку в JAR-файл с помощью муравья - PullRequest
3 голосов
/ 18 января 2010

Я хотел бы создать как «толстый» jar с ant, где у меня есть, не только обычные классы, файлы манифеста и т. Д., Но и папку «libs».:

<jar destfile="myjar.jar" update="yes" basedir="${libs.dir}"/>

, но это добавляет файлы в 'libs' в корень файла jar, где я хотел бы иметь саму папку libs в jar (со всем, что она содержит, конечно)

Могу ли я сам создать папку lib в банке и добавить файлы в указанное место в банке?

Ответы [ 4 ]

9 голосов
/ 18 января 2010

Если вы укажете использовать каталог в качестве корневого для вашего набора файлов, вы можете просто найти каталог, и он сохранит структуру.

<jar destfile="myjar.jar" >
  <fileset dir=".">
    <include name="**/${libs.dir}/**"/>
  </fileset>
</jar>
1 голос
1 голос
/ 18 января 2010

Вы должны сделать что-то вроде следующего. В частности, команда zipfileset . В основном вы говорите, что хотите собрать $ {build.name} .jar (вы можете жестко закодировать путь к «myjar.jar» или что-то в этом духе), а затем добавить различные файлы в JAR.

Надеюсь, это поможет!

<jar destfile="${dist}/${build.name}.jar">

    <!-- Generate the MANIFEST.MF file. -->
    <manifest>
        <attribute name="Built-By" value="${user.name}" />
        <attribute name="Release-Version" value="${version}" />
        <attribute name="Main-Class" value="my.lib.Main" />
            <attribute name="SplashScreen-Image" value="TitleScreen.png" />
        <attribute name="Class-Path" value="${classpath}" />
    </manifest>

    <zipfileset dir="${build.dir}" />
    <zipfileset dir="${resources}" />

    <fileset file="${resources}/icons/misc_icons/TitleScreen.png" />
</jar>
1 голос
/ 18 января 2010

Используйте это расширение муравья: http://one -jar.sourceforge.net /

Существует также плагин Eclipse: FatJar

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...