#maven #web.xml #eclipse-wtp #maven-war-plugin
#maven #web.xml #eclipse-wtp #maven-war-плагин
Вопрос:
Когда я развертываю веб-приложение с помощью eclipse wtp, пользовательский файл «webxml», указанный в pom.xml не копируется в папку WEB-INF как ‘web.xml » . Однако файл правильно скопирован в war в папке WEB-INF.
Вот фрагмент из pom.xml
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<webXml>${webXmlPath}</webXml>
<packagingExcludes>WEB-INF/web.xml</packagingExcludes>
</configuration>
</plugin>
${webXmlPath} зависит от профиля и имеет значение по умолчанию:
<properties>
<webXmlPath>${basedir}/src/main/webapp/WEB-INF/web-embed.xml</webXmlPath>
</properties>
спасибо 🙂
Ответ №1:
Если вы используете m2e-wtp, ваш /.settings/org.eclipse.wst.common.component должен содержать запись типа :
<wb-resource deploy-path="/WEB-INF/web.xml" source-path="/src/main/webapp/WEB-INF/web-embed.xml"/>
Это должно сработать.
Теперь для серверных адаптеров, которые его поддерживают (в настоящее время только JBoss), использование <packagingExcludes>WEB-INF/web.xml</packagingExcludes>
фактически предотвратит любые web.xml от развертывания. Другие серверные адаптеры (например, Tomcat) будут игнорировать эту директиву.
Комментарии:
1. Это мне ОЧЕНЬ помогло. Спасибо @Fred!