Военная задача сборки Gradle с добавлением дополнительных jar-файлов, чем из зависимостей в build.gradle - PullRequest
0 голосов
/ 01 апреля 2019

Мы недавно перешли на сборку Gradle, и я добавил задачу войны, в которой есть web.xml и зависимые банки вместе с jar, созданным в задаче jar.

task testWar(type: War)
{
archiveName 'test.war'
webXml = file('WebContent/WEB-INF/web.xml')

into ('WEB-INF/lib')
    {
        from configurations.compile
        from jar
    }
}

Это создает войну, ноРазмер WEB-INF / lib в два раза больше размера библиотек, фактически заданных в зависимостях.Это может быть добавление банок, от которых зависят зависимые банки.Но Ant build прекрасно работает только с зависимыми банками.

Есть ли способ создать войну только банками, указанными в зависимостях?

Примечание: https://docs.gradle.org/current/userguide/war_plugin.html не помогло, так как мне нужны все банки в зависимостях, просто хочу избежатьдополнительные зависимые банки

1 Ответ

0 голосов
/ 02 апреля 2019

Вы можете использовать gradle dependencies, чтобы узнать, какие библиотеки вызывают включение этих дополнительных зависимостей.

Получив это, просто исключите зависимость, которую вы хотите удалить из пакета.

dependencies {
    compile (group: 'org.quartz-scheduler', name: 'quartz', version: '2.3.0') {
        exclude group: 'org.slf4j', module: 'slf4j-api'
    }
}
...