IntelliJ IDEA里Maven默认情况下编译版本为JDK1.5
当新建一个maven工程时,如果没有在pom文件中配置maven的编译版本,maven默认使用的是jdk1.5,即使idea中配置了JDK8或是其他版本也是一样的情况。
解决方法
1.一劳永逸,直接修改idea配置的maven的setting.xml文件,把如下文件添加到setting.xml文件的profiles标签里,这样新建的所有maven工程默认的编译版本都为你配置的版本(这里的以JDK1.8为例)
<!-- 全部 maven 项目默认使用 jdk1.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> <repositories> <repository> <id>jdk18</id> <name>Repository for JDK 1.8 builds</name> <url>http://www.myhost.com/maven/jdk18</url> <layout>default</layout> <snapshotPolicy>always</snapshotPolicy> </repository> </repositories> </profile>
2. 在每个maven项目的pom中配置,编译版本
方式一:在project标签中加入
<properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties>
方式二:在project标签中加入
<build> <plugins> <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> </configuration> </plugin> </plugins> </build>
这两者选任意一种即可。