当前位置: 首页 > 知识库问答 >
问题:

IntelliJ-无效的源版本:17

谢海阳
2023-03-14

我与Gradle在IntelliJ中创建了一个新的Java项目,该项目使用Java 17。运行我的应用程序时出现错误原因:错误:无效源代码版本:17

我的设置

我已经通过IntelliJ安装了openjdk-17,并将其设置为我的projectsdk

项目语言级别已设置为17-密封类型,始终是严格的浮点语义

模块中-

模块中-

设置中-

Gradle

plugins {
    id 'org.springframework.boot' version '2.5.6'
    id 'io.spring.dependency-management' version '1.0.11.RELEASE'
    id 'java'
}

group = 'com.app'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '17'

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-starter-websocket'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    implementation 'com.fasterxml.jackson.core:jackson-core:2.13.0'
    implementation 'com.fasterxml.jackson.core:jackson-databind:2.13.0'
}

test {
    useJUnitPlatform()
}

我已经看了这里所有的答案,但我似乎无法解决这个问题。我肯定错过了什么,但我找不到。我在使用Java 8或11时没有遇到任何问题。

我该如何解决这个问题?


共有3个答案

黄正浩
2023-03-14

将Gradle JVM设置为目标构建JVM

谈桐
2023-03-14

该消息通常意味着您的JAVA_HOME环境变量指向不同的JAVA版本。

以下是要遵循的步骤:

  • 关闭IntelliJ IDEA
  • *nix系统:export JAVA_HOME=/path/to/openjdk-17
  • Windows系统:set JAVA_HOME=path\to\openjdk-17

您应该能够构建您的项目。

您可能还需要通过将Java插件工具链设置为您的目标版本来指示Gradle使用与其自身使用的JVM不同的JVM:

// build.gradle
java {
    toolchain {
        languageVersion = JavaLanguageVersion.of(17)
    }
}
法弘亮
2023-03-14

在intellij中,只需将Gradle JVM设置为Java版本17。

“归档-

 类似资料:
  • 在尝试运行测试时,我遇到了这个编译错误: 我试着在谷歌和这里研究这个问题,在应用了所有对其他人有效的解决方案后,这个问题仍然存在。以下是我到目前为止所做的: 首选项->Java编译器:将“项目字节码版本”设置为1.8 我还将每个模块的目标字节码版本设置为1.8 解决方法编辑: 我可以绕过这个问题,方法是转到首选项->构建、执行、部署->编译器->Java编译器,并将编译器从“javac”更改为“e

  • 我正在尝试运行我的JSQL解析器类,但是我得到。 我试着跟着这个答案走。我更改了文件>构建,执行,部署>Java编译器>项目字节码版本:1.8。但是,我不能将模块语言级别和项目语言级别更改为1.8,因为没有选项。我仍然得到同样的错误在下面。 代码

  • 问题内容: 我正在尝试构建使用Java 8构建的应用程序,现在已升级到Java11。我在 Windows计算机中 使用oracle文章安装了Java 11 ,并使用 IntelliJ IDEA 2017 作为IDE。 我更改了系统环境变量并设置了 并将其添加到变量中。 当我在IntelliJ中构建应用程序时,这是我得到的: 到目前为止,这是我尝试过的: 我将目标值从8 更改为11,但这无济于事。同

  • 我正在尝试构建一个使用Java8构建的应用程序,现在它已经升级到Java11了。我在windows机器中使用oracle文章安装了Java11,并且使用IntelliJ IDEA 2017作为我的IDE。 我更改了系统环境变量,并将 当我在IntelliJ中构建应用程序时,我得到的是: 这是我目前所尝试的: > 我将目标值从8更改为11,但这没有帮助。另外,在中验证了并且我的所有模块都设置为11。

  • 我正在尝试使用以下命令构建我的Spring启动项目: 但它不断抛出这个错误: 我的项目使用Java版本11,IntelliJ Java版本也设置为11。 这是我到目前为止在IntelliJ上完成的Java版本设置: 当我跑完这一切后 我想我已经做了所有可能的事情。还有其他我可以尝试的设置吗??

  • 在我的项目中,我有三个模型文件--用户、约会和通知。有三个存储库接口,每个接口实现CrudRepository。服务类和控制器类也存在。在执行项目时,我得到了两个错误:1。在类路径上未检测到spring Webinitializer。2.创建bean时出现异常。下面是堆栈跟踪: userrepository.class:包com.cl3.model; 导入java.util.List; 导入org