IDEA多Module设置language level默认级别

问题:

报错信息:Information:java: javacTask: 源发行版 8 需要目标发行版 1.8

解释:在项目中或者module中,默认的language level是JDK1.5,在java complier和project structure里每次修改完后就当次修改有效,刷新maven或者重启都会变成jdk1.5。

两种解决方案:

1.在出现问题的module的pom加入以下代码

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <testExcludes>
            <testExclude>/src/test/**</testExclude>
        </testExcludes>
        <encoding>utf-8</encoding>
    </configuration>
</plugin>

只限当前模块有效

2.修改maven的setting.xml文件,找到profiles,加入下面的代码
(推荐,这种方法只要使用此maven,你的项目的language level都是1.8)

<profile>
      <id>jdk-1.8</id>
        <activation>
            <activeByDefault>true</activeByDefault>
            <jdk>1.8</jdk>
        </activation>
            <properties>
                <maven.compiler.source>1.8</maven.compiler.source>
                <maven.compiler.target>1.8</maven.compiler.target>
                <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> 
            </properties>
</profile>

版权声明:本文为m0_37959155原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。