Rob*_*bb1 181 java intellij-idea
我正在使用IntelliJ IDEA Ultimate 2019.3.1。每当我尝试启动任何简单的 Java Maven 项目(甚至可能是一个简单的 Hello World)时,我都会收到以下错误:
Error:java: error: release version 5 not supported
Run Code Online (Sandbox Code Playgroud)
java --version
通过终端运行我得到以下输出:
openjdk 11.0.5 2019-10-15
OpenJDK Runtime Environment (build 11.0.5+10-post-Ubuntu-0ubuntu1.1)
OpenJDK 64-Bit Server VM (build 11.0.5+10-post-Ubuntu-0ubuntu1.1, mixed mode, sharing)
Run Code Online (Sandbox Code Playgroud)
javac --version
通过终端运行我得到以下输出:
javac 11.0.5
Run Code Online (Sandbox Code Playgroud)
要在Java编译器的设置(如建议在这里)我看到这一点:
我尝试将“目标字节码版本”编辑为1.8,但出现以下错误:
Error:(1, 26) java: package javafx.application does not exist
Error:(2, 20) java: package javafx.stage does not exist
Error:(4, 27) java: cannot find symbol
symbol: class Application
Error:(12, 23) java: cannot find symbol
symbol: class Stage
location: class Main
Error:(7, 9) java: cannot find symbol
symbol: method launch(java.lang.String[])
location: class Main
Error:(11, 5) java: method does not override or implement a method from a supertype
Run Code Online (Sandbox Code Playgroud)
将其更改为1.11版,我收到此错误:
Error:java: Source option 5 is no longer supported. Use 6 or later.
Run Code Online (Sandbox Code Playgroud)
你认为有什么问题?我该如何解决?
Kon*_*kov 352
首先,设置language level
/release versions
在pom.xml
这样的:
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
Run Code Online (Sandbox Code Playgroud)
否则,Maven 将默认值设置为 1.5。maven-compiler-plugin
如果您还没有,您还需要包括:
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
此外,尝试在以下每个位置更改 Java 版本:
文件 -> 项目结构 -> 项目 -> 项目 SDK -> 11.
文件 -> 项目结构 -> 项目 -> 项目语言级别 -> 11。
文件 -> 项目结构 -> 项目 -> 模块 -> -> 来源 -> 11
在项目- > ctrl+ alt+ s- >构建,执行,部署- >编译器- > Java编译器- >项目的字节码版本- > 11
在项目- > ctrl+ alt+ s- >构建,执行,部署- >编译器- > Java编译器- >模块- > 1.11。
小智 55
我花了一段时间来汇总一个实际的解决方案,但这里是如何摆脱这个编译错误。
打开 IntelliJ 首选项。
搜索“编译器”(或类似“compi”的东西)。
向下滚动到 Maven -->java 编译器。在右侧面板中将是一个模块列表及其关联的 Java 编译版本“目标字节码版本”。
选择版本 >1.5。如果 jdk 不可用,您可能需要升级您的 jdk。
小智 18
默认情况下,您的“项目字节码版本未在 Maven 项目中设置。
它认为您当前的版本是 5。
解决方案1:
只需转到“项目设置>构建,执行...>编译器>java编译器”,然后将您的字节码版本更改为您当前的java版本。
解决方案2:
在 POM 文件中添加以下构建插件:
<properties>
<java.version>1.8</java.version>
<maven.compiler.version>3.8.1</maven.compiler.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven.compiler.version}</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
</plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
您应该通过以下任一方法再进行一次更改:
1 通过IntelliJ GUI
正如“tataelm”所述:
项目结构 > 项目设置 > 模块 > 语言级别: > 然后更改为您首选的语言级别
2 直接编辑IntelliJ配置文件
通过编辑以下行直接打开<ProjectName>.iml
文件(如果您使用 IntelliJ,它会在您的项目文件夹中自动创建):
从:<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5">
到:<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_11">
因为你的方法也意味着编辑这个文件。:)
方法 1 实际上是要求 IntelliJ 帮助编辑 .iml 文件,而不是由您直接完成。
小智 8
我将以下代码添加到我的pom.xml
文件中。它解决了我的问题。
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
Run Code Online (Sandbox Code Playgroud)
在我的例子中,唯一可行的解决方案是将以下块添加到pom.xml
:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version> <configuration> <release>12</release>
</configuration>
</plugin>
</plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
在我的情况下,将这部分添加到pom.xml
文件中就足够了:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>11</release>
</configuration>
</plugin>
</plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
231730 次 |
最近记录: |