Maven War:部署描述符的文件名
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Maven War:部署描述符的文件名相关的知识,希望对你有一定的参考价值。
所以我已经将maven-war-plugin添加到我的pom.xml中并添加了:
<configuration>
<webXml>WEB-INF/glassfish-web.xml</webXml>
</configuration>
现在当我打包我的应用程序时,这个描述符被重命名为web.xml,这在尝试将我的应用程序部署到我的glassfish服务器时导致失败,因为服务器认为web.xml是错误格式化的。那么如何告诉maven保持文件名不受影响?
答案
<webXml>
配置对maven-war-plugin
不是强制性的。因此,如果您没有明确提及webXml,它将不会重命名该文件。如果从pom.xml
中删除此webXml条目,您将获得预期的行为
编辑1
我认为没有选项可以跳过webXml文件重命名。你可以在copy-resources尝试maven-resources plugin
任务。您可以配置从Project dir到War archive的资源文件/目录映射。
<plugins>
<-- other plugin configurations.... -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>
${basedir}/target/app/WEB-INF
</outputDirectory>
<resources>
<resource>
<directory>WEB-INF</directory>
<includes>glassfish-web.xml</includes>
</resource>
<resource>
<directory>{another directory from where all files are copied}
</directory>
</resource>
<resource>
<directory>
{another directory from where, all but test.properties are copied}
</directory>
<excludes>test.properties</excludes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugins/>
以上是关于Maven War:部署描述符的文件名的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Eclipse 将 Maven 项目的 WAR 部署到 JBoss 服务器?
知识小罐头03(javaee初学者用maven+部署war包到tomcat 上)