java项目一般默认为1.5版本jdk,如何修改使用的jdk版本呢?
在Maven中配置使用的JDK,一般有两种方法,笔者会对如下的两种方法进行 分别的介绍。

笔者就以JDK10作为介绍,其他正常的JDK版本的配置也是一样的。这里使用JDK10 只是为了作一个通用的示范,使得大家举一反三。后面会贴出其他版本的配置信息。供大家拷贝粘贴。知道大家开发项目就是为了快速解决问题。

JDK10:

步骤一.确定jdk版本正确

此处笔者使用的是JDK10,如果希望配置JDK9或其他版本,只需要将JAVA_HOME环境变量配置到指向指定版本的JDK安装目录即可 参考Jdk环境变量配置的方法

步骤二.

配置完成之后一定要重启IDE,一定要重启IDE,一定要重启IDE!!!

步骤三

在IDEA中的项目配置中。配置好正确的JDK版本。也就是我们需要的版本。这步是最重要的

注意:如果此步骤不配置会不生效。

pom 文件配置

<properties><maven.compiler.source>10</maven.compiler.source><maven.compiler.target>10</maven.compiler.target>
</properties><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.7.0</version>
</plugin>

刷新Maven项目


或者AutoImport也可以,但是不建议使用,因为会导致性能下降

查看是否配置成功

验证是否成功

按照图中的指引进行编译,编译后去target目录查看编译后的字节码。

打开字节码目录

其他版本的JDK 配置方法

JDK9

<properties><maven.compiler.source>1.9</maven.compiler.source><maven.compiler.target>1.9</maven.compiler.target>
</properties>

JDK11

<properties><maven.compiler.source>11</maven.compiler.source><maven.compiler.target>11</maven.compiler.target>
</properties>

JDK12

<properties><maven.compiler.source>12</maven.compiler.source><maven.compiler.target>12</maven.compiler.target>
</properties>

总结一下,上文。Maven compiler 这个插件可以理解为一个空壳,他会根据我们标志的maven.compiler.source去我们当前的编译器中找相应的版本,假设我们的编译器版本是10的话,我们这里的source.target写10,1.9,1.8,1.7…都是可以的。但是填写11就不行了。因为我们的编译器最高版本就10,所以编译时会报错!同样的,也就是这个特性,使得我们可以使用高版本 的编译器,编译 出低版本的字节码

延续上面的例子,我们把编译器的版本换低。尝试编译后的代码,查看有和变化,此时我们的JDK 是10,我们把编译版本设置成JDK8,看看有什么效果

至于为啥高版本可以比编译低版本,这大家就得了解一下Javac的交叉编译了
类似下面,我也不做多解释,因为笔者也不是很懂。也不怎么感兴趣。有兴趣的可以自己了解

本文参考链接:

javac1.7交叉编译
https://stackoverflow.com/questions/18320587/javac-cross-compilation-with-1-7
maven 项目如何实现java9
https://github.com/cfdobber/maven-java9-jigsaw
maven compile 插件解释
https://maven.apache.org/plugins/maven-compiler-plugin/examples/pass-compiler-arguments.html
java交叉编译
https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javac.html

本文转载自:https://blog.csdn.net/blueboz/article/details/81270242
如何配置java8 https://www.mkyong.com/maven/how-to-tell-maven-to-use-java-8/

IDEA开发环境中maven 项目配置使用JDK9,JDK10,JDK11,JDK12等相关推荐

  1. C/C++代码静态检查工具PC-lint在VS2008开发环境中的安装配置和使用

    PC-Lint偏重于代码的逻辑分析,它能够发现代码中潜在的错误,比如数组访问越界.内存泄漏.使用未初始化变量等. 1.  从http://download.csdn.net/detail/liucha ...

  2. 让你提前认识软件开发(51):VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改

    第3部分 软件研发工作总结 VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改 [文章摘要] Pclint是一种C/C++软件代码静态分析工具.它是一种更加严格的编译器,能够发 ...

  3. Java代码安装maven jar_Java中Maven项目导出jar包配置的示例代码

    具体代码如下所示: src/main/java src/main/resources ${project.build.directory} **/*.java src/test/java src/te ...

  4. (无任何网络配置,纯代码实现) 一个组件,一个hook,让你在本地开发环境中拿到微信code

    前言 众所周知,初次接触微信相关生态铁定是头疼的,用微信API第一步就得拿到微信code, 官方上说这么操作,实际业务上体现就是:需要code的页面首先得重定向到微信的授权地址上面去,并且要携带上你当 ...

  5. Python的IDE:基于Eclipse/MyEclipse软件的PyDev插件配置python的开发环境(不同python项目加载不同版本的python)—从而实现Python编程图文教程之详细攻略

    Python的IDE:基于Eclipse/MyEclipse软件的PyDev插件配置python的开发环境(不同python项目加载不同版本的python)-从而实现Python编程图文教程之详细攻略 ...

  6. VScode/PyCharm+Anaconda+pyQt5的Python工程协同开发(环境搭建及项目配置)

    1.背景 之前对python的应用一直停留在写个main函数,写段逻辑,完成一个目的的阶段,不知道读者的学习路线是如何的? 至于python环境的搭建,个人实际上经历了以下几个阶段: ①早期接触时,从 ...

  7. 项目jetty服务器,maven项目配置Jetty服务器

    org.mortbay.jetty jetty-maven-plugin 8.1.7.v20120910 5 /bfc-loms 8080 500000 主要在maven的pom.xml里增加如上配置 ...

  8. Myeclipse学习总结(15)——Eclipse/MyEclipse中Maven项目常见问题解决汇总

    Eclipse/MyEclipse中Maven项目一般会遇到如下问题: 一. The superclass "javax.servlet.http.HttpServlet" was ...

  9. 从unity到unreal4 虚幻4学习笔记 一 : ue4与vs studio、vs code开发环境的安装与配置

    前言 学习ue4的理由 我是个资深unity玩家,自认为可以使用unity做任何事.对虚幻的仰慕纯属技术信仰,懂的都懂不多解释.我并不打算放弃unity,正所谓艺多不压身,多储备点技术栈也没坏处. u ...

  10. pom文件找不到子项目_java,eclipse_eclipse中maven项目pom.xml文件找不到parent要怎么解决?,java,eclipse,maven - phpStudy...

    eclipse中maven项目pom.xml文件找不到parent要怎么解决? 在maven项目中方pom.xml文件找不到parent,maven clean报错如下: [ERROR] [ERROR ...

最新文章

  1. cocos2d: 使用TexturePacker , pvr.ccz, CCSpriteBatchNode, CCSpriteFrameCache
  2. Spring.Net的IOC入门
  3. 改进初学者的PID-初始化
  4. java程序员应该掌握的技术才算得上熟练Java开发
  5. 易点云在京发布璇玑调度系统 中小企业办公IT升级步伐加快
  6. 程序员应如何理解高并发中的协程
  7. js正则标志/g,/i,/m说明
  8. URAL 1031 Railway Tickets
  9. 2018杭电多校第六场1009(DFS,思维)
  10. Sqlmap 常用命令
  11. 单片机之串口通信 485多机通信 红外测试
  12. flex:1代表什么
  13. 科学计算机怎么算四分位数,科学网—四分位数间距 - 贺小星的博文
  14. jQuery插件以及插件下载
  15. 学习计算机it编程的 10 大好处
  16. windows快速清理垃圾文件bat
  17. python人脸识别实验报告总结_人脸识别实验报告.doc
  18. 【蓝桥杯】水题 基础练习 回文数 c语言
  19. 区块链将会怎样颠覆Google、Amazon、Facebook和Apple?
  20. mac 平台显示歌词最好的音乐播放器软件 —— Vox + LyricsX

热门文章

  1. 自媒体原创度检测工具有哪些?这几个可以免费用
  2. AutoCAD 2019 汉化包
  3. Linux下本地yum源配置和局域网yum源配置
  4. html提示版本过低升级,IE8浏览器提示版本过低怎样升级呢?
  5. 《Java从入门到放弃》文章目录
  6. Java 从入门到放弃?
  7. java连接Hbase操作数据库的全过程---搭建hbase数据库
  8. Android 笔记 json GSON,Android中使用Gson解析JSON数据
  9. 分享大三改进后的python写的【银行管理系统】,超详细 【内附源码】
  10. vue 实时显示当前时间