Как исключить транзитивную зависимость в сборке муравья с помощью задачи maven для ant?
Как исключить транзитивную зависимость в задании maven для муравья. Сфера: время выполнения и предоставляемые, похоже, не помогут в этом случае. Это мой build.xml
<artifact:remoteRepository url="https://mynexus/" id="remote.repository"/>
<artifact:dependencies filesetId="dependency.fileset" useScope="runtime">
<dependency version="1.7.0" artifactId="commons-beanutils" groupId="commons-beanutils"/>
</artifact:dependencies>
У commons-beanutils есть зависимость commons-logging, которую мне нужно исключить.
2 ответа
Я не думаю, что задача Maven поддерживает эту функцию. Вы рассматривали возможность использования Apache Ivy вместо этого? Следующие 2 примера демонстрируют возможность исключения.
Задача cachepath полезна для управления путями классов:
<ivy:cachepath pathid="compile.path">
<dependency org="commons-beanutils" name="commons-beanutils" rev="1.7.0" conf="default">
<exclude module="commons-logging"/>
</dependency>
</ivy:cachepath>
Задача получения может использоваться для локальной загрузки и сохранения файлов:
<ivy:retrieve pattern="lib/[artifact]-[revision](-[classifier]).[ext]">
<dependency org="commons-beanutils" name="commons-beanutils" rev="1.7.0" conf="default">
<exclude module="commons-logging"/>
</dependency>
</ivy:retrieve>
maven-ant поддерживает это исключение, пожалуйста, RTFM https://maven.apache.org/ant-tasks/reference.html
как только
<artifact:dependencies filesetId="dependency.fileset" useScope="runtime">
<artifact:dependency version="1.7.0" artifactId="commons-beanutils" groupId="commons-beanutils">
<exclusion groupId="commons-logging" artifactId="commons-logging">
</<artifact:dependency>
</artifact:dependencies>
Но я не нашел поддержки для исключения некоторых зависимостей, определенных файлом pom