IDEA 报错 Error:java: 无效的源发行版: 10(Error:java: invalid source release: 10)

如果解决了你的问题,麻烦点赞评论支持一下;如果觉得文章有错误,麻烦评论指出,我会第一时间评论修改!

开发工具
  • IntelliJ IDEA 2018.3.5(Ultimate Edition)版本
  • Mac
解决方法
  • Project Settings页面,保证Modules里的Language Level版本高于Project里的Project SDK版本
  • 如果使用了maven-compiler-plugin插件,请保证sourcetarget版本高于Project里的Project SDK版本
  • 注意,不是修改Project里的Project Language Level版本,具体原因参照下面在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
原因(重点,理解了下次就不会再出错)
  • 几个版本的含义
    • ModulesProject SDK:项目实际编译所用的版本,即最后生成的class文件是使用该版本编译的,一般都是开发人员自行安装在机器上,取决于运行环境!
    • Project里的Project Language Level:项目的全局检查版本,我理解为工程最低支持版本;IDEA会使用自带的Language Level指定的jdk版本来对我们的代码进行编译检查
    • Modules里的Language Level:指定模块的最低支持版本,作用同Project Language Level,只是作用域更小
    • maven-compiler-plugin:作用同Project Language Level,不依赖于开发软件,更加有效!
  • 几个检查版本的优先级:maven-compiler-plugin > Project Language Level > Language Level, 即只要指定了优先级更高的设置(如maven-compiler-plugin)的版本,后者(如Project Language Level)不生效;出现错误,原因只会出在优先级更高的配置!
  • 版本检查的意义:很多时候,尤其是大的项目,我们无法保证生产环境JDK的版本,与我们实际本地开发的版本一致,所以需要通过该机制进行检查
  • 建议:项目在生产运行时,没有IDEA的环境,所以我建议大家使用maven-compiler-plugin去进行运行前的版本检查
  • 补充:使用maven-compiler-plugin时,如修改后问题没有坚决,请先mvn clean一下
测试代码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Kf57f531-1573651174439)(http://psee6b08v.bkt.clouddn.com/8.png)]

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值