ivy: запретить загрузку исходников и файлов .txt

Как указать IVY не загружать исходные файлы и файлы .txt. У меня есть зависимость, и она загружает с ней файлы license.txt, когда я использую что-то вроде этого

<ivy:cachepath pathid="ivy-src-classpath" conf="compile"/>

он помещает файлы .txt в путь к классам, что приводит к ошибкам при использовании задачи Java.

Unable to obtain resource from /home/muthiah/Work/ivy/cache/org.apache.commons/com.springsource.org.apache.commons.logging/licenses/license-1.1.1.txt: java.util.zip.ZipException: error in opening zip file

ivy
person user373201    schedule 06.09.2010    source источник


Ответы (2)


В файле ivy.xml добавьте сопоставление конфигурации с конфигурацией «по умолчанию» другого модуля:

<dependency org="commons-lang" name="commons-lang" rev="2.5" conf="compile->default"/>

Без этого сопоставления вы получаете как стандартные, так и дополнительные зависимости удаленного модуля.

Еще одно хорошее сопоставление (для модулей Maven):

conf="compile->master"

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

person Mark O'Connor    schedule 07.09.2010

У меня была та же проблема с несколькими java.util.zip.ZipException: ошибка при открытии zip-файла в моих выходных журналах ANT, потому что в пути к классам были файлы лицензии .txt. Решение для меня состояло в том, чтобы обновить запись ivy:cachepath, добавив type="jar":

<ivy:cachepath pathid="ivy-src-classpath" conf="compile" type="jar"/>

Это ограничит добавление в путь к классам только файлов jar.

person ptha    schedule 07.09.2015