Я пытаюсь перейти от сборки Ant к сборке Gradle. Я использую Shadow (com.github.jengelman.gradle.plugins:shadow:5.2.0
) для создания своего проекта. Мой проект включает в себя 3 Apache зависимости Axiom:
implementation group: 'org.apache.ws.commons.axiom', name: 'axiom-api', version: '1.2.13'
implementation group: 'org.apache.ws.commons.axiom', name: 'axiom-dom', version: '1.2.13'
implementation group: 'org.apache.ws.commons.axiom', name: 'axiom-impl', version: '1.2.13'
Конфигурация Shadow выглядит следующим образом:
shadowJar {
baseName = project.name
classifier = ''
archiveVersion = ''
exclude "META-INF/*.SF"
exclude "META-INF/*.DSA"
exclude "META-INF/*.RSA"
}
Когда эти банки создаются с моим проектом Ant, я получаю 2 axiom.xml
файлов в META-INF
в банке. Оба отличаются.
Когда я строю с Shadow, я получаю последний из двух axiom.xml
файлов. Первый файл перезаписывается последним.
Это вызывает ошибку во время выполнения. Как я могу заставить Shadow включать файлы с дублирующимися именами файлов, а не просто перезаписывать их?