7

我有两个项目,项目 A 取决于项目 B,所以通常情况下,我的 projectA/pom.xml 中有以下部分:

<dependency>
   <artifactId>projectB</artifactId>
   <groupId>blabla</groupId>
   <version>version1</version>
</dependency>

我想要实现的目标非常简单,Maven 配置文件是否允许我执行以下操作:

if(profileA) {
    <version>version1</version>
}
else {
    <version>version2</version>
}
4

1 回答 1

8

是的,这可以做到(放入activeByDefault您需要默认的任何配置文件)。

<dependency>
    <artifactId>projectB</artifactId>
    <groupId>blabla</groupId>
    <version>${dependency.version}</version>
</dependency>
...
<profiles>
    <profile>
        <id>first</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>            
        <properties>
            <dependency.version>1.2.3</dependency.version>
        </properties>
    </profile>
    <profile>
        <id>second</id>
        <properties>
            <dependency.version>2.3.4</dependency.version>
        </properties>
    </profile>
</profiles>
于 2012-05-11T14:41:51.910 回答