У меня есть код для создания почтового файла в сценарии сборки муравья.
<target name="zip-dist" description="archiving artifacts">
<zip destfile="${artifacts}/${zipfile}.zip" update="false" basedir="${target.dist}" includes="*.xyz-*" />
</target>
Когда файл извлекается с помощью win zip right click -> Extract All...
, предупреждение отсутствует, но при извлечении с 7-zip
отображается «Предупреждения: ошибка заголовков» , но оно успешно.
Я знаю, что это не влияет на вывод, так как это всего лишь предупреждение, поэтому пользователям предлагается игнорировать или использовать метод win-zip .
Но поверьте мне, невозможно заставить их понять, и они все продолжают есть мою голову . Есть много пользователей, и я бьюсь головой, повторяя одно и то же снова и снова. Тем не менее они хотят, чтобы это было исправлено.
Могу ли я использовать какой-либо атрибут в ant-zip
цели или мне следует использовать какую-либо другую технику архивирования в ant build
?
Я искал несколько онлайн-источников, это последняя надежда! Пожалуйста помоги.
2 ответа
Вместо обычной zip-цели используется 7-zip для создания zip.
<property name="7z.exe" value="C:/Program Files/7-Zip/7z.exe" />
<target name="zip-dist" description="archiving artifacts">
<exec executable="${7z.exe}">
<arg value="a" />
<arg value="-tzip" />
<arg value="${artifacts}/${zipfile}.zip" />
<arg value="${target.dist}/*.xyz-*" />
</exec>
</target>
Так как 7-zip включает в себя всю необходимую информацию, касающуюся заголовка, чтобы предупреждение не появлялось.
Конечно, 7-zip должен быть доступен в системе.
У меня была такая же проблема.
Исправлено добавление только одного атрибута для принудительного расширения Zip64:
zip64Mode="always"
Попробуйте и должны работать на вас тоже.
Похожие вопросы
Новые вопросы
ant
Apache Ant (ранее Jakarta Ant) - это декларативный инструмент сборки на основе XML, созданный изначально для проектов Java. Он предоставляет богатый набор стандартных задач для выполнения наиболее распространенных операций сборки, таких как компиляция исходного кода Java, создание архивов и выполнение тестов. Функциональность Ant может быть расширена с помощью пользовательских задач и макросов.