Файлы внутри WAR выглядят двойными
Я использую ANT для создания файла WAR для моего веб-приложения на Java. Однако, когда я заглядываю внутрь файла WAR, я вижу, что каждый файл появляется дважды (не папки, а только файлы). Когда я извлекаю файл WAR, ошибок нет, и структура файла выглядит корректной, двойных файлов нет. Если я затем соберу извлеченный файл обратно в ZIP-файл, то архив будет почти точно в два раза меньше размера в байтах исходного файла WAR, созданного ANT.
Я использую следующую задачу для создания моего файла WAR:
<target name="dist" depends="package">
<war destfile="${bin.dir}/webapp.war" basedir="${tmp.dir}">
<fileset dir="${tmp.dir}" />
</war>
</target>
Когда я проверяю файловую структуру в tmp.dir
файлы кажутся нормальными. Я использую ANT из Eclipse (Helios) в Ubuntu 9.10.
1 ответ
Я узнал, что вызвало проблему. <fileset>
тег внутри <war>
Задача состоит в том, чтобы заставить файлы быть добавлены в архив дважды. Было бы хорошо, если бы ANT выдавал ошибку, но это не так. Так как я хочу добавить весь tmp.dir
к моему архиву я должен был привыкнуть:
<target name="dist" depends="package">
<war destfile="${bin.dir}/webapp.war" basedir="${tmp.dir}">
<!-- No extra <fileset> -->
</war>
</target>
В случае, если кто-то еще сталкивается с этой проблемой, я оставляю этот вопрос здесь, а не удаляю его.