是否可以在maven pom.xml文件中为不同的配置文件设置一组不同的依赖项?
e.g。
mvn -P debug
mvn -P release
我想在一个配置文件中选择一个不同的依赖jar文件,该配置文件具有相同的类名和相同接口的不同实现。
答案 0 :(得分:155)
引用Maven documentation on this:
配置文件元素包含可选的激活(配置文件触发器)以及在激活该配置文件后要对POM进行的更改集。例如,为测试环境构建的项目可能指向与最终部署不同的数据库。 或者可以根据使用的JDK版本从不同的存储库中提取依赖关系。
(重点是我的)
只需将release
个人资料的相关性放在个人资料声明中,并对debug
执行相同操作。
<profiles> <profile> <id>debug</id> … <dependencies> <dependency>…</dependency> </dependencies> … </profile> <profile> <id>release</id> … <dependencies> <dependency>…</dependency> </dependencies> … </profile> </profiles>
答案 1 :(得分:5)
您的groupId,artifactId应该在您的配置文件中标记为属性,您可以将依赖项移动到通用部分。