IntelliJ:错误:Java:不支持发布版本10

时间:2018-10-13 01:32:14

标签: java jetbrains-ide intellij-idea-2018

在IntelliJ中,当我尝试从构建菜单进行构建时,出现了一条奇怪的错误消息:错误:java:不支持10版发行版

我不明白这一点,因为在“项目结构”中设置了以下设置: 项目SDK:9.0 项目语言级别:SDK默认 模块语言级别:项目默认值(两个模块)

在我的pom.xml文件中,两个模块中都设置了以下属性:

<maven.compiler.source>9</maven.compiler.source>
<maven.compiler.target>9</maven.compiler.target>

我不知道为什么要尝试将JDK 10用于任何东西,但我仍然收到该消息。 我很高兴使用JDK10,但是我的项目在该版本中不起作用,所以我回头看看它可以在哪个版本中使用。我已经安装了1.4至10版本的SDK。 我也尝试使用JDK 1.8进行构建,但是得到的错误消息略有不同:错误:java:无效的目标版本:10 我发现可以使用JDK 9从命令行进行构建,但是我需要从IDE进行构建。 谁能告诉我如何使用JDK 1.9或1.8构建项目?谢谢。

14 个答案:

答案 0 :(得分:12)

获得最高评价的answer 确实帮助了我。但是,对我而言,问题不是 Project字节码版本。相反,我的Maven模块标有目标字节码版本1.5 ,请参见下图。

只需单击该行并将其删除即可解决问题:

  • 文件->设置->构建,执行,开发->编译器-> Java编译器
  • 删除列表中所有按模块的字节码版本,这些版本将覆盖项目字节码版本。

Per-module bytecode version

答案 1 :(得分:10)

我遇到了类似的错误,但是没有使用Maven。

通过更新IntelliJ配置解决了该问题:

  • 首选项->构建,执行,开发->编译器-> Java编译器
  • Project bytecode version更新为8

enter image description here

答案 2 :(得分:7)

除了错误是“不支持发行版5”外,我遇到了类似的问题。我尝试了所有上述和其他提议的解决方案,但没有任何效果,除了将以下xml放入pom.xml文件中:

/usr/bin/ld: cannot find -lgfortran
collect2: error: ld returned 1 exit status
/usr/share/R/share/make/shlib.mk:6: recipe for target 'cluster.so' failed
make: *** [cluster.so] Error 1
ERROR: compilation failed for package ‘cluster’
* removing ‘/home/luca/R/x86_64-pc-linux-gnu-library/3.6/cluster’
Error: Failed to install 'ComplexHeatmap' from GitHub:
  (converted from warning) installation of package ‘cluster’ had non-zero exit status 

代码来自:https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html

将此代码放入pom.xml后,请确保为Maven项目导入更改或启用自动导入:

Intellij popup box

答案 3 :(得分:1)

我收到此消息,不支持Java错误版本12。我正在使用11。

我如何设法解决此问题?转到文件->项目结构->项目,然后将项目语言级别更改为您拥有的版本,然后单击并应用。

答案 4 :(得分:1)

将以下代码放入pom.xml中即可。

<maven.compiler.release>11</maven.compiler.release>

答案 5 :(得分:1)

首先,将此代码放入pom.xml

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>Current Latest Version of Maven e.g. 3.8.1</version>
            <configuration>
                <target>Java Version installed in your system e.g. 13</target>
                <source>Java Version installed in your system e.g. 13</source>
                <release>Java Version installed in your system e.g. 13</release>
            </configuration>
        </plugin>
    </plugins>
</build>

并且还转至文件>设置>构建,执行,部署>编译器> Java编译器 并将“项目字节码版本”更改为系统中安装的Java版本,例如13

答案 6 :(得分:1)

文件->项目结构中的已解决问题。

将项目语言级别更改为11。

答案 7 :(得分:0)

我只是想通了。我还需要在maven-compiler-plugin中调整版本。我正在使用3.8.0版。我需要更改此值:

def cramersRule(A,b):

在这里找到它:

<release>10</release>

答案 8 :(得分:0)

您的IntelliJ IDEA可能以前使用过Java8。从Java 9开始,Java没有jdk和jre两部分,而Java只有jdk。从Java 8切换到Java 11时,我得到了相同的错误消息。因此,您必须将IntelliJ IDEA切换到新的Java版本。

打开项目结构( Ctrl + Shift + Alt + S

enter image description here

或者,从IntelliJ IDEA菜单中:文件->项目结构->项目

定义新的jdk。 重新编译项目。

这对我有用。

答案 9 :(得分:0)

对于仅在“属性”部分中更新其maven文件的人,请确保是否单击IDE maven工具上的刷新以触发道具设置。

第1步。

<properties>
    <maven.compiler.source>1.5</maven.compiler.source>
    <maven.compiler.target>1.5</maven.compiler.target>
</properties>

第2步(非常重要!!!)

单击IntelliJ Maven工具栏上的“刷新”图标。

答案 10 :(得分:0)

我通过转到Maven设置解决了这个问题

第1步;要么进行;

  • Maven中的猴子扳手图标(跳至第2步)
  • 文件-设置或 Ctrl + Alt + S

步骤2。转到构建,执行,部署-Maven-导入:用于导入程序的JDK (在底部)

答案 11 :(得分:0)

对我来说,在IntelliJ中,我先进入文件,然后进入项目结构,然后选择了不同的SDK版本,而不是错误消息中所示的版本,并且错误消失了:)

答案 12 :(得分:0)

您可以尝试使用另一个选项,转到Maven并检查它正在获取哪个JRE版本。我通过修复它解决了我的问题。我有HDK 14,但它正在考虑11。

答案 13 :(得分:0)

由于 .idea 包,这个问题通常在新设置的项目中弹出。

.解决方案根目录中的 idea 文件夹(隐藏在 OS X 上)包含 IntelliJ 的项目特定设置文件。其中包括每个项目的详细信息,例如 VCS 映射以及运行和调试配置,以及每个用户的详细信息,例如当前打开的文件、导航历史记录和当前选择的配置。

  • 删除 .idea 包并重新启动 IDE。

很可能你的建筑问题已经消失了:)