【发布时间】:2023-07-06 14:00:02
【问题描述】:
我正在尝试测试 maven-war-plugin 的覆盖功能。基本上我需要合并两个战争项目。
所以我将战争定义为依赖:
<dependency>
<groupId>my.group.id</groupId>
<artifactId>my-legacy-war-project</artifactId>
<version>${project.version}</version>
<type>war</type>
</dependency>
然后配置叠加层:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<overlays>
<overlay>
<groupId>my.group.id</groupId>
<artifactId>my-legacy-war-project</artifactId>
<targetPath>legacy</targetPath>
</overlay>
</overlays>
</configuration>
</plugin>
但是 Maven 构建这个项目失败,抱怨这个依赖:
[ERROR] 未能执行目标 org.apache.maven.plugins:maven-war-plugin:2.3:exploded (default) on 项目 my-project: 覆盖 [id my.group.id:my-legacy-war-project] 是 不是项目的依赖项。 -> [帮助 1]
覆盖应该与 Maven 3.0.5 一起使用?为什么构建抱怨声明的依赖项?
【问题讨论】: