从构建中排除maven依赖项
我有两个maven项目。项目A和项目B.B使用A作为依赖项。当我将B构建为war时,Maven导出a及其依赖项。如何告诉maven在导出时不要单独包含此依赖关系树?我在maven war配置中找不到excludes标记 注意:我不能在依赖项中使用提供的作用域,因为我需要它来使用嵌入式tomcat进行测试 项目B Pom的片段从构建中排除maven依赖项,maven,pom.xml,Maven,Pom.xml,我有两个maven项目。项目A和项目B.B使用A作为依赖项。当我将B构建为war时,Maven导出a及其依赖项。如何告诉maven在导出时不要单独包含此依赖关系树?我在maven war配置中找不到excludes标记 注意:我不能在依赖项中使用提供的作用域,因为我需要它来使用嵌入式tomcat进行测试 项目B Pom的片段 <dependencies> <!-- Project A --> <dependency> <groupId>te
<dependencies>
<!-- Project A -->
<dependency>
<groupId>test</groupId>
<artifactId>test-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<encoding>UTF-8</encoding>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/</path>
<port>80</port>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<!-- Exclude Tag is not available in configuration -->
</configuration>
</plugin>
</plugins>
测试
试芯
0.0.1-快照
maven编译器插件
3.6.1
UTF-8
1.8
1.8
org.apache.tomcat.maven
tomcat7 maven插件
2.2
/
80
org.apache.maven.plugins
maven战争插件
3.2.2
您需要创建配置文件,您可以创建两个配置文件,一个用于开发(嵌入式tomcat,带dep A),另一个用于生产(不带dep)
发展
真的
戳
假如
我终于决定在git中克隆一个分支,并将其命名为release branch。现在将有一个不同的Pom,即,将提供B中的项目a范围。在Dev分支中进行了一系列更改之后,我将把它挑选到release分支中并构建jar。另外,我相信这对Jenkins来说应该是好的(还没有测试,但这是下一步)你可以创建两个配置文件,一个用于嵌入式tomcat,另一个用于提供,将你的依赖关系作为rubtime和提供的另一个放在tomcat配置文件中。这能解决你的问题吗?谢谢@Arturo看起来这是唯一的办法。