2015-10-30 1 views
5

Без Gradle War Plugin, bootRepackage задача зависит от jar задача, но с Gradle War Plugin, это зависит от задачи war.Как сделать bootRepackage зависит от jar не войны при использовании Gradle War Plugin

Как его изменить, чтобы зависеть от задачи jar, хотя я использую плагин Gradle War?

UPDATE:

Я использую war задачу создать военный файл, включая документы, которые будут развернуты на сервере документации, и я хочу использовать bootRepackage d баночку файл для предоставления услуг. Моя задача war зависит от задачи asciidoctor, которая зависит от задачи test (я использую документы Spring REST.), Но я не хочу запускать задачу asciidoctor или test при использовании задачи bootRepackage.

я решил мою проблему со следующей установкой:

ext { 
    mainClassName = 'com.izeye.throwaway.Application' 
} 

task myBootRepackage(type: BootRepackage, dependsOn: jar) { 
} 

, но я не уверен, что это хорошая практика.

Это пример проекта, имеющий вышеуказанную конфигурацию:

https://github.com/izeye/spring-boot-throwaway-branches/tree/war

+0

Я не уверен, чего вы хотите достичь, но может быть, вы попытаетесь создать какую-то пользовательскую задачу типа Jar (или может пройти только 'jar') и настроить плагин как' bootRepackage { withJarTask = customJarTask } 'из-за этой ссылки http://docs.spring.io/spring-boot/docs/current/reference/html/build-tool-plugins-gradle-plugin.html#build-tool-plugins -gradle-repackage-configuration – Stanislav

+0

@Stanislav Спасибо за комментарий. Я обновил свой вопрос. –

ответ

5

Вы должны были быть в состоянии сделать это:

bootRepackage { 
    withJarTask jar 
} 

В то время как это правильно приводит к банку флягу задачу, чтобы упаковать , он не снимает зависимость от военной задачи. Это еще один признак this Spring Boot issue.

Пока эта проблема не будет решена, принятый вами подход - объявление вашей собственной задачи BootRepackage и настройка параметров, на которые она зависит, - это ваш лучший вариант.

Смежные вопросы