Maven中配置maven-compiler-plugin 插件


 

如何修改Maven工程的JDK版本

   修改项目中的pom.xml文件,添加maven-compiler-plugin插件3.8.1版本,指定JDK的编译版本为Java 13,简约版配置信息如下: 


    
        
        
            org.apache.maven.plugins
            maven-compiler-plugin
            3.8.1
            
                13
                13
                UTF-8
            
        
    

 然后update maven project,即可获得指定JDK版本,此方法适用于修改单个工程的JDK版本。如果想进行全局设置,请移步本文第三节。

maven-compiler-plugin插件详解

   maven是个项目管理工具,如果不告诉它代码要使用什么样的jdk版本编译,它就会用编译插件maven-compiler-plugin默认的jdk版本来处理,这样就容易出现版本不匹配的问题,以至于可能导致编译不通过的问题。例如代码中要是使用上了Java 8的新特性,比如函数式编程,但是maven在编译的时候使用的是Java 7,那这一段代码是完全不可能编译成.class文件的。为了避免出现这种情况,在构建maven项目的时候,我习惯性第一步就是配置maven-compiler-plugin插件,指定项目源码的 jdk 版本,编译后的 jdk 版本,以及编码方式。

   从 maven-compiler-plugin 3.8.0 之后,默认JDK 版本就由 1.5 改为 1.6 了。但是这仍然跟不上 JDK 的更新速度,目前大多数系统都在使用 JDK 1.8。Apache Maven Project 对 maven-compiler-plugin中compiler:compile有如下关于jdk版本变更的描述:

 

  详细配置:

 
    org.apache.maven.plugins
    maven-compiler-plugin
    3.8.0
    
                            
        1.8 
        1.8 
        UTF-8
            true
            true
            true
            true
            
            1.3
            
            128m
            512m
            -verbose -bootclasspath ${java.home}\lib\rt.jar
        
    

修改maven的settings.xml文件

 此种设置方式将影响由maven创建的所有项目。找到maven安装目录的conf文件夹,修改其中的settings.xml文件,profiles标签加入如下配置: 



    
        jdk-13
        
            true
            13
        
        
            13
            13
            13
        
    

   这样全局设置后,项目编译时就会默认使用jdk 13。全局配置的好处就是省事、方便,从而避免对每个项目都去设置。

小结

   以上就是这篇文章的全部内容了,希望本文对大家的学习或者工作具有一定的参考和学习价值;如果有疑问,大家可以在评论区留言交流,也希望大家多多点赞关注。谢谢大家对[楼兰胡杨]的支持!

Reference 

http://www.jfinal.com/share/1850

http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html