一尘不染

Java不同构建配置文件的不同依赖项

java

对于不同的配置文件,maven pom.xml文件中是否可能具有一组不同的依赖关系?

例如

mvn -P debug
mvn -P release

我想在一个配置文件中选择一个不同的依赖项jar文件,该文件具有相同的类名和相同接口的不同实现。


阅读 458

收藏
2020-03-11

共1个答案

一尘不染

在此引用Maven文档:

配置文件元素既包含可选激活(配置文件触发器),又包含如果已激活POM则要对POM进行的一组更改。例如,为测试环境构建的项目可能指向与最终部署不同的数据库。或者可以根据所使用的JDK版本从不同的存储库中提取依赖项。
(强调是我的)

只需将release配置文件的依赖项放在配置文件声明本身内,并对进行相同的操作debug。

<profiles>
    <profile>
        <id>debug</id>
        …
        <dependencies>
            <dependency>…</dependency>
        </dependencies>
        …
    </profile>
    <profile>
        <id>release</id>
        …
        <dependencies>
            <dependency>…</dependency>
        </dependencies>
        …
    </profile>
</profiles>
2020-03-11