2016-10-25 6 views
0

Я новичок в градиенте. Я хотел бы начать веб-приложение с градиентом. Версия, которую я использую, - v3.1Может ли градир автоматически создать папку META-INF, WEB-INF и web.xml?

На данный момент я добавляю только плагин приложения: «war» в файле build.gradle.

Я использую военный плагин, но он не создает папку META-INF, WEB-INF и web.xml после запуска ./gradlew build.

Нужно ли мне вручную создавать эти папки, а файл или градация имеет способ, которым я не знаю, чтобы создать их автоматически?

+0

Может быть, это ответ, который вы хотите: http://stackoverflow.com/questions/ 25241895/issue-create-a-directory-with-gradle-not-working –

ответ

1

Gradle specification of War plugin отвечает на ваш вопрос:

поведение по умолчанию задачи войны является скопировать содержимое SRC/основной/веб-приложение в корне архива. Возможно, ваш каталог webapp содержит подкаталог WEB-INF, который может содержать файл web.xml. Скомпилированные классы скомпилированы в WEB-INF/classes. Все зависимости конфигурации времени выполнения копируются в WEB-INF/lib.

+0

, но почему нет подсистемы WEB-INF/classes, WEB-INF/web.xml после запуска ./gradlew build. Нужно ли сначала создавать их вручную, а потом они будут включены в военный файл? – Will

+0

Я ожидаю, что у вас нет исходного кода в src/main/webapp для ввода в WEB-INF/classes. Вам необходимо вручную создать файл web.xml. – Crazyjavahacking

0

I Googled this https://guides.gradle.org/building-java-web-applications/.

Руководство упоминается:

Есть два варианта для определения метаданных веб-приложений. До версии 3.0 спецификации сервлета метаданные находились в дескрипторе развертывания под названием web.xml в папке WEB-INF проекта. Начиная с версии 3.0 метаданные могут быть определены с помощью аннотаций.

Я думаю Gradle поощряет использование аннотаций, так Gradle не автоматически создавать WEB-INF папки и т.д.