错误:Java:无效的目标版本:11-IntelliJ IDEA
我正在尝试构建一个使用Java8构建的应用程序,现在它升级到Java11。我在我的windows机器中安装了并使用IntelliJ IDEA 2017作为我的IDE 我更改了系统环境变量并设置了错误:Java:无效的目标版本:11-IntelliJ IDEA,java,intellij-idea,java-11,Java,Intellij Idea,Java 11,我正在尝试构建一个使用Java8构建的应用程序,现在它升级到Java11。我在我的windows机器中安装了并使用IntelliJ IDEA 2017作为我的IDE 我更改了系统环境变量并设置了 JAVA_HOME to C:\Program Files\Java\jdk-11.0.1 并将其添加到Path变量中 C:\>java -version java version "11.0.1" 2018-10-16 LTS Java(TM) SE Runtime Environment 1
JAVA_HOME to C:\Program Files\Java\jdk-11.0.1
并将其添加到Path
变量中
C:\>java -version
java version "11.0.1" 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)
当我在IntelliJ中构建应用程序时,我得到的是:
Information:java: Errors occurred while compiling module 'test-domain_main'
Information: javac 1.8.0_171 was used to compile java sources
Information:1/10/2019 4:21 PM - Compilation completed with 1 error and 0 warnings in 1s 199ms
Error:java: invalid target release: 11
这就是我迄今为止所尝试的:
.idea/compiler.xml
目标值从8更改为11,但这没有帮助。另外,在settings>Build,Execution,Deployment>Compiler>Java编译器中验证Target字节码版本
,并且我的所有模块都设置为11
文件>项目结构>SDK*(目前我列出了1.7和1.7)*>添加新SDK>JDK>
在那之后,我选择了C:\ProgramFiles\Java\jdk-11.0.1
,但错误为“所选目录不是jdk的有效主目录”C:\Program Files\Java\
中,我看到1.7
和1.8
有单独的JDK和JRE文件夹,而11.0.1
还是我还需要改变什么 请访问IntelliJ IDEA 2018.x以获得Java 11支持。您的IntelliJ IDEA版本在Java 11之前发布,不支持此Java版本。- 我今天收到了相同的信息和错误信息,但我收到了 最近更新的Idea->2018.3.3,于2019年1月9日建成李>
- 为了解决这个问题,我更改了文件->项目结构->模块 语言水平达到10级
- 并检查文件->设置->构建、执行、, 部署->编译器->Java编译器->项目字节码 和每个模块字节码版本。我有11个在那里
- 现在我没有收到这些通知和错误 对于像我这样的人来说,这可能是有用的,因为他们有着最新的想法,却得到了同样的错误
我希望它会有用在更新我的想法后,我遇到了同样的错误,我解决了它,如下所示: 文件>>项目结构…>>计划 “项目语言级别:”设置为“11-lambda参数的局部变量语法” 因此,我将其更改为“SDK默认值(8-Lambdas、类型注释等)”,然后应用更改
错误被解决。也有同样的错误。问题是我有一个空的
package-info.java文件
。一旦我在里面添加了包名,它就工作了…我可以说我有类似的问题。我的案例:我在工作区中从项目的新版本切换到旧版本,尝试运行需要重新编译的单个junit,重新编译错误被抛出,目标无效
从IntelliJ中的项目设置(F4)来看,一切都很好,java设置为1.7。但当我尝试从IDE重新编译时,由于目标级别错误而引发了错误。检查后,我发现在一个iml文件中,语言被设置为JDK_11。手动更改为JDK_1_7后,一切恢复正常
还值得手动检查IDE创建的*iml文件中的lang级别。如果通过构建系统(Maven、Gradle等)构建项目可行,但IntelliJ show
目标版本无效
错误,则执行以下操作
注意:删除.idea/目录时,您添加的任何特定于存储库的IntelliJ设置都将被删除,并将使用默认值重新创建这些设置。对于我来说,我也遇到了同样的问题,但java v8中存在同样的问题,我在我的机器上为我的不同项目使用了不同版本的java。在导入我的一个项目时,我遇到了同样的问题。为了检查配置,我检查了所有与SDK相关的设置,无论是在
文件->项目->项目结构/模块中,还是在运行/调试配置设置中。我将一切设置为java-8
,但仍然遇到同样的问题。在检查所有配置文件时,我发现.idea中的compiler.xml有一个字节码TargetLevel的条目,该条目设置为11。这里,如果我将其更改为8,即使它显示相同的编译器输出,并从compiler.xml
中删除
,也可以解决此问题 Maven也有可能使用不同版本的JDK,在这种情况下,您可以将Maven设置为使用项目默认的JDK版本
我的项目模块设置为8,但pom.xml设置为11。当我在模块中从8改为11时,它起了作用。我遇到了这个问题,因为我目前正在将代码库升级到JDK 11,并在分支中在8和11之间切换。看来IntelliJ不喜欢这样
解决方案:
如果您在项目结构中选择了当前JDK(Ctrl+Shift+Alt+S
),但仍然收到错误,请使缓存无效文件>使缓存无效/重新启动…
重新启动IDE后,我的错误消失了。我也遇到了同样的错误,我只是将pom.xml中的java版本从11更改为1.8,工作正常。我也遇到了类似的错误,但在我的例子中是错误:java:invalid source release:11。。。因此,我只是将Java11的所有注释都更改为Java8,即使注释是Java8,我也只是这样离开它。我希望它能帮助你解决这个问题。如果你
File->Project Structure->Modules ->> Language level to 8 ( my maven project was set to 1.8 java)
File -> Settings -> Build, Execution, Deployment -> Compiler -> Java Compiler -> 8 also there
compileJava.options.fork = true
compileJava.options.forkOptions.executable = 'C:\\Program Files\\Java\\jdk-11.0.8'
1. pom.xml (start with this important)
- <java.version>1.8</java.version>
* Enable auto import on pop up
* Wait until it loads
2. Project Structure
- Project
- Project SDK - 1.8
- Project language Level - 8
- Modules
- Sources
- Language level - 8
- Dependencies - Project SDK 1.8
3. Delete idea folder
4. Close window
5. Reopen window (make sure it loads at bottom)
<properties>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
</properties>