亲爱的 stackoverflow 会员,我面临着 Maven war 插件的一个奇怪问题。
我已将 Eclipse 项目目录结构配置为:
项目
|-- pom.xml
-- 源代码
- 主要的
|-- java
- 资源
-- 网络应用程序
|-- WEB-INF
-- 网络.xml
当我运行 maven build 命令时,webapp 目录中存在的所有文件都被复制到对我来说很奇怪的classes 文件夹中。生成 war 文件中的结果目录结构为:
|-- 元信息文件
-- WEB-INF
-- 课程
--
-- 元信息文件
-- WEB-INF
我没想到类文件夹中会有 META-INF 和 WEB-INF 文件夹。它复制了类文件夹不需要的数据,并且这些文件夹已经位于 war 文件的根目录中。
请让我知道如何限制 Maven War 构建器以排除 META-INF 和 WEB-INF 进入类文件夹?
小智 3
我也有这个问题。通过将 maven-war-plugin 配置添加到我的 pom 并包含一个<packagingExcludes>元素来覆盖 maven-war-plugin 配置,解决了这个问题:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<packagingExcludes>**/webapp</packagingExcludes>
...
</configuration>
</plugin>
</plugin>
Run Code Online (Sandbox Code Playgroud)
正如OP的情况一样,这阻止了将 的内容复制到${basedir}/src/main/webapp,包括META-INF和WEB-INF,target/classes/main/webapp以及随后复制到target/${finalName}/WEB-INF。
实际上,maven 然后按照期望的方式运行,将${basedir}/src/main/webapp only的内容放入target/${finalName}并随后放入${finalName}.war
| 归档时间: |
|
| 查看次数: |
4135 次 |
| 最近记录: |