12

如果有人知道如何在 IDEA 的项目属性中处理这个 pom,我很感兴趣:

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

我应该设置项目级别 1.3 和模块级别 1.5 还是明智的经文?

以及任何时候当 IDEA 重新加载 maven 项目时,它都会设置从 maven 到 1.3 的语言级别,并且总是抱怨测试类。

但这将作为错误报告提交给 JetBrains。

4

2 回答 2

10

此请求跟踪支持的测试源/目标级别。语言级别更改消息也是一个已知问题

于 2013-02-01T12:29:57.087 回答
3

如前所述,Idea 尚不支持主要和测试源的不同语言级别。

有一种解决方法可以强制 Idea 在testSource导入 Maven 项目时使用定义的语言级别。您可以使用不同的编译器插件设置仅为 Idea 创建单独的 Maven 配置文件:

<profiles>

    <profile>
        <id>default</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.2</version>
                    <configuration>
                        <source>1.6</source>
                        <target>1.6</target>
                        <testSource>1.8</testSource>
                        <testTarget>1.8</testTarget>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>

    <profile>
        <id>ide</id>
        <activation>
            <activeByDefault>false</activeByDefault>
            <property>
                <name>idea.maven.embedder.version</name>
            </property>
        </activation>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.2</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <testSource>1.8</testSource>
                        <testTarget>1.8</testTarget>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>

</profile>
于 2017-03-12T09:03:18.260 回答