如何设置maven项目中java source/target的版本?

以往的项目都设置好了java source、target的版本,刚开个新项目,启动编译直接报错,因为source是1.5, 无法使用java8的语法和新特性。

查询官方文档后发现,如果要指定Java编译版本有两种方式

第一种,settings.xml中指定,这样本机器上的所有maven项目,如果没有指定java编译版本都时候会生效,应为setting是全局的。

官方文档在这里

<profiles>      
    <profile>  
        <id>JDK1.8</id>  
        <activation>  
            <activeByDefault>true</activeByDefault>  
        </activation>  
        <properties>  
            <maven.compiler.source>1.8</maven.compiler.source>  
            <maven.compiler.target>1.8</maven.compiler.target>  
            <encoding>UTF-8</encoding>  
        </properties>  
    </profile>  
</profiles>  

第二种,修改具体项目的pom.xml文件,例如
在org.apache.maven.plugins中设置java版本

<build>  
    <plugins>  
        <plugin>  
            <groupId>org.apache.maven.plugins</groupId>  
            <artifactId>maven-compiler-plugin</artifactId>  
            <version>3.3</version>  
            <configuration>  
                <source>1.8</source>  
                <target>1.8</target>  
                <encoding>UTF-8</encoding>  
            </configuration>  
        </plugin>  
    </plugins>  
</build>  

详细内容可以参考这里

第三种解决版本(有时直接在IDEA中运行)
这里写图片描述

猜你喜欢

转载自blog.csdn.net/russle/article/details/80786221