Maven:在不同的源代码级别上进行编译和测试

2022-09-04 08:34:47

我目前正在处理一个将在嵌入式设备上运行的项目。该设备运行Java ME JRE(与Java 1.4相当)。

由于这个maven被配置为针对源和目标级别1.4进行编译。

是否可以在不同的源/目标级别上运行 maven 测试阶段?因为通过这种方式,我可以使用Mockito进行单元测试。


答案 1

源代码和目标版本可以分别设置,用于编译和测试maven编译器插件Compile目标。您可以通过在 pom 中定义属性来更改设置:

<properties>
    <maven.compiler.source>1.4</maven.compiler.source>
    <maven.compiler.target>1.4</maven.compiler.target>
    <maven.compiler.testSource>1.5</maven.compiler.testSource>
    <maven.compiler.testTarget>1.5</maven.compiler.testTarget>
</properties>

或者通过编译器插件的显式配置:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.4</version>
    <configuration>
        <source>1.4</source>
        <target>1.4</target>
        <testSource>1.5</testSource>
        <testTarget>1.5</testTarget>
    </configuration>
</plugin>

答案 2

推荐