Home > Back-end >  Can't run java app using java last version (17)
Can't run java app using java last version (17)

Time:01-03

Linux Mint 20.2

IntelliJ IDEA 2021.3 (Community Edition

In build.gradle:

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

sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17

repositories {
    mavenLocal()
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-webflux'


    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testImplementation 'io.projectreactor:reactor-test'
    testImplementation 'com.github.tomakehurst:wiremock:2.27.2'
}

test {
    useJUnitPlatform()
}

In my project settings: enter image description here

But when I try to run app I get error:

> Task :compileJava FAILED

Execution failed for task ':compileJava'.
> error: invalid source release: 17

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

CodePudding user response:

You have to make sure that the Gradle version you are using supports Java 17. At the time of writing, the only versions that do this are versions 7.3. .

You can configure the version under Settings -> Build, Execution, Deployment -> Build Tools -> Gradle. For example, if you use Gradle from the "gradle-wrapper.properties" file, then the distributionUrl in this file should be set to something like

distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip

You should also set the Gradle JVM to Java 17. Sometimes I found it necessary before executing the build task to run the clean task first, in order to delete all files that might have been compiled with a previous Java version. Also, it might then be necessary to delete the old Gradle configurations (under Edit configurations...) and just create new ones.

CodePudding user response:

Are you running the application from within IntelliJ or are you running it via the terminal. If so, you need to make sure that the appropriate JDK is installed on your computer.

What is the result of the following command in terminal?

java -version
  • Related