提供两个不同战争的多模块项目
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了提供两个不同战争的多模块项目相关的知识,希望对你有一定的参考价值。
我正在开发一个多模块Spring MVC项目,其中一个模块必须发出具有所有依赖关系的战争,而另一个模块必须发出具有很少依赖关系的战争。这可能吗?如果可以的话,如何实现?
答案
使用Maven配置文件,并仅在某些配置文件中添加一些依赖项或通过范围将它们设置为:提供:
https://www.baeldung.com/maven-profiles
示例:
<profiles>
<profile>
<id>dev</id>
<dependencies>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
<version>${testcontainers.version}</version>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>postgresql</artifactId>
<version>${testcontainers.version}</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>prod</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<dependencies>
<!-- my own library in my private repository which acts like a mock of testcontainers project. Don't ask :-) -->
<dependency>
<groupId>cz.jiripinkas</groupId>
<artifactId>fake-testcontainers</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</profile>
</profiles>
然后您使用以下项目构建项目:
mvn clean install -P dev
这将放入WAR测试容器库中
或:
mvn clean install -P prod
这将放入WAR fake-testcontainer库中
以上是关于提供两个不同战争的多模块项目的主要内容,如果未能解决你的问题,请参考以下文章
Android 使用两个不同的代码片段获取当前位置 NULL