关于idea出现“java: 无效的目标发行版: 9”问题的解决方式

问题来源:最近在看钉钉开发,按照钉钉开发文档在github上下载了demo的源码,但是发现在idea上无法编译,一运行就会报错:java: 无效的目标发行版: 9,如图:
关于idea出现“java: 无效的目标发行版: 9”问题的解决方式_第1张图片
问题分析:起初我以为是该项目就是需要jdk9的环境,于是我就下载了jdk9,安装配置好环境后,重新编译了一下,确实不再报这个错误了,但是切换到jdk9的环境后又出现了新的问题,如下图:
关于idea出现“java: 无效的目标发行版: 9”问题的解决方式_第2张图片
百度看了一下,说这个问题是因为项目中使用的spring-boot-devtools 的版本太老了,与jdk9不兼容,说白了就是springboot的版本太低了。

深入分析:人家钉钉官网提供的demo的pom文件中其实指定了jdk的版本为1.8,仔细看图一,但是既然人家项目中指定了jdk1.8,我的本地环境也是1.8,为什么还会报错(java: 无效的目标发行版: 9)呢?其实这个可能是因为人家程序员开发这个demo的时候,他的开发环境是1.9,然后你下载人家的源码后,你本地的开发环境是1.8,你的开发环境和别人的不一样,所以造成了这个问题。但是至于为什么人家如果是jdk9的环境,他开发的时候有没有遇到第二个问题,我就不知道了。

解决(java: 无效的目标发行版: 9)问题的办法

  1. 点击idea右上角的这个图标(如下图),如果你的idea没有显示出这个图标,或者你的这个图标不在右上角,那你可以点击:File --> Project Structure
    关于idea出现“java: 无效的目标发行版: 9”问题的解决方式_第3张图片
  2. 点击Project,按照下图,将环境设置成1.8
    关于idea出现“java: 无效的目标发行版: 9”问题的解决方式_第4张图片
  3. 点击Modules,按照下图设置,这里如果你有多个module的话记得都要设置一下,我这里只有一个module
    关于idea出现“java: 无效的目标发行版: 9”问题的解决方式_第5张图片
    关于idea出现“java: 无效的目标发行版: 9”问题的解决方式_第6张图片
  4. 都设置好了之后点击apply应用,点击ok关闭设置页面,然后点击File --> settings 进入设置页面,找到 Java Compile,按照下图设置(这里一定要和你项目中配置的jdk版本对应上)
    关于idea出现“java: 无效的目标发行版: 9”问题的解决方式_第7张图片
  5. 这几步都设置完成后,项目就可以正常的启动了
    总结:我们在调研一些新技术的时候,经常会在网上download别人的代码,由于开发环境不一样,所以常常会遇到(java: 无效的目标发行版: 9)的问题,在此记录一下,作为警示
  6. 上面设置完成之后,项目确实可以正常启动了,但是我发现 install 和package 的时候又会报另外一个错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project eapp-corp-project: Fatal error compiling,那么这又是怎么回事呢?具体我也不知道怎么回事,但是网上百度到了解决办法,那就是在pom文件中加入下面的配置,如下图所示:
    关于idea出现“java: 无效的目标发行版: 9”问题的解决方式_第8张图片

你可能感兴趣的:(java,java,jdk,intellij,idea)