IDEA编译报错:Error:java:无效的源发行版:17的解决办法

 更新时间:2023年01月30日 10:27:40   作者:全栈小哥  
IDEA里面装了几个版本的JDK,导入工程后时不时提示一下错误,下面这篇文章主要给大家介绍了关于IDEA编译报错:Error:java:无效的源发行版:17的解决办法,需要的朋友可以参考下

出现这种错误的原因可能是:

1.本机默认使用(编译)的jdk与该项目所使用的jdk版本不同。

2.jdk版本不适用于这个Idea,很典型的一个例子就是使用的Idea是2020的,而你用到的jdk是17,jdk17是2021年推出的,所以你只能去安装新版本的idea。

如果报错Error:Auto build failure: Cannot determine path to 'tools.jar' library for 17 (/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home)也是这个原因导致的。

该项目用的是什么版本的jdk请打开pom.xml查看:

如何解决:

1.修改项目使用的jdk版本,但是如果本来使用的是17,你降级为8,就可能导致某些代码不能实现。 (具体内容请看下面⬇️)

2.安装新版本的Idea从而可以使用新的jdk。(我的另一篇博客说明如何安装IDEA2022,mac版本PoJie)

步骤如下:

1. Preferences->

 按如下路径找到java compiler

 以下这两处改成8(我的jdk是1.8,如果你的是18,就改成18)

关于怎么知道这个项目用的jdk是多少,下一步可以看到 

点击OK

下一步 ,file里找到project structure

如下图,可以看到我使用的jdk版本是1.8 

此处对应选择8

 接下来在Modules里将红色框里改成8(截图中我还没改,这是我报错的原因) 

点击OK,重新编译就OK啦。

ps:当你重导maven项目的之后,再编译可能还会遇到这个问题,按照我上面的办法修改即可,当然你也可以直接去修改pom.xml配置文件,这样子就不会再出现版本问题了。

2.修改pom.xml文件的配置信息

根据报错的信息提供的内容,它说的是某个版本太高需要修改。

3.总结

之前我创建springboot项目的时候还没有爆过这个错误,但是最近我新创建springboot项目时,给我爆了这么一个错误。我找了挺久发现没有详细的解决方法,然后我对比了以前创建的没有爆过错的pom文件,发现上图的两个地方不一样,然后我修改之后就可以成功运行了。然后我回想了一下出现这个问题错误的原因是在哪里,我从刚开始的创建项目开始一步步的观察,最后发现一个地方,问题出现的原因就是在这里。如下图所示:

总结

到此这篇关于IDEA编译报错:Error:java:无效的源发行版:17的解决办法的文章就介绍到这了,更多相关IDEA Error:java:无效的源发行版:17内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 浅谈SpringBoot如何封装统一响应体

    浅谈SpringBoot如何封装统一响应体

    今天带各位小伙伴学习SpringBoot如何封装统一响应体,文中有非常详细的介绍及代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-05-05
  • JAVA中string数据类型转换详解

    JAVA中string数据类型转换详解

    在JAVA中string是final类,提供字符串不可以修改,string类型在项目中经常使用,下面给大家介绍了string七种数据类型转换,需要的朋友可以参考下
    2015-07-07
  • idea已经提交到远程分支,但需要本地和远程都回退到某一版本问题

    idea已经提交到远程分支,但需要本地和远程都回退到某一版本问题

    这篇文章主要介绍了idea已经提交到远程分支,但需要本地和远程都回退到某一版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • Java详解使用线程池处理任务方法

    Java详解使用线程池处理任务方法

    java中经常需要用到多线程来处理,我们非常不建议单纯使用继承Thread或者实现Runnable接口的方式来创建线程,那样势必有创建及销毁线程耗费资源、线程上下文切换问题。同时创建过多的线程也可能引发资源耗尽的风险,这个时候引入线程池比较合理,方便线程任务的管理
    2022-05-05
  • JAVA字符串拼接常见方法汇总

    JAVA字符串拼接常见方法汇总

    这篇文章主要介绍了JAVA字符串拼接常见方法,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • Kafka简单客户端编程实例

    Kafka简单客户端编程实例

    这篇文章主要为大家详细介绍了Kafka简单客户端编程实例,利用Kafka的API进行客户端编程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • springboot整合redis实现发送邮箱并验证

    springboot整合redis实现发送邮箱并验证

    大家好,本篇文章主要讲的是springboot整合redis实现发送邮箱并验证,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • SpringBoot中自定义首页(默认页)及favicon的方法

    SpringBoot中自定义首页(默认页)及favicon的方法

    这篇文章主要介绍了SpringBoot中如何自定义首页(默认页)及favicon,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • JavaFX如何获取ListView(列表视图)的选项

    JavaFX如何获取ListView(列表视图)的选项

    这篇文章主要介绍了JavaFX如何获取ListView(列表视图)的选项,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • JavaWeb实现多文件上传及zip打包下载

    JavaWeb实现多文件上传及zip打包下载

    这篇文章主要为大家详细介绍了JavaWeb实现多文件上传及zip打包下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07

最新评论