仅用于测试目的的Maven依赖

时间:2017-07-11 22:05:00

标签: java maven testing spring-data-jpa

我有像这样的maven依赖:

<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-jpa</artifactId>
    <version>${version}</version>
</dependency>

问题是$ {version}属性应该替换为1.8.1.RELEASE或1.9.0.RELEASE,具体取决于我在安装时选择的配置文件,但出于测试目的,只有1.9.0.RELEASE应该即使我使用1.8.1配置文件,也可以使用。有没有办法做到这一点?我尝试使用测试范围,但它没有像我想的那样工作。

1 个答案:

答案 0 :(得分:0)

这样的事情对你有用吗?

<profiles>
    <profile>
        <id>defaultProfile</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <magicVersion>1.9.0.RELEASE</magicVersion>
        </properties>
    </profile>
    <profile>
        <id>Release181</id>
        <properties>
            <magicVersion>1.8.1.RELEASE</magicVersion>
        </properties>
    </profile>
    <profile>
        <id>test</id>
        <properties>
            <magicVersion>1.9.0.RELEASE</magicVersion>
        </properties>
    </profile>      
</profiles>

即使已经由1.8.1配置文件设置了版本,激活测试配置文件的想法也会覆盖该版本。用例就是;

mvn -P Release181,test test