gradle
を介してビルドする既存のSpring boot
アプリがあります。最近の日私はJDK / JRE 8
を使用していて、今、私はJDK-11
を使おうとしています
そのため、互換性を確認するために、Java_HOME
をJDK-11
に設定していますが、Java 8
モードでコンパイルしようとしています
私は私のbuild.gradle
で下のブロックを追加しました
compileJava {
targetCompatibility = '1.8'
}
それから私はJava_HOME
を明示的に設定しますset Java_HOME=C:\Users\arun\Desktop\jdk-11.0.1
gradlew clean build
を実行してから実行してください
しかし、私は以下の例外で止まっています
> Configure project :
Build Version = build-182-ga03cf6c
> Task :compileJava FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileJava'.
> warning: source release 11 requires target release 11
Java_HOME
をJDK-11
に指す方法は、Java-8
モードでそれを実行しますか?
Java 9の時点では、grayleとクロスコンパイルするために--release nオプションを使用できます。 SourceCompatibilityとTargetCompatibilityを設定すると、その場合はBootClassPathをJDK Nに設定する必要があります。 を参照してください。Java 9コンパイラの--releaseフラグは何ですか?詳細については 。
代わりに、このようにJava 9+ "--release" compilerargを使用します。
compilerargs.addall([' - release'、 '8'])
https://docs.gradle.org/current/dsl/org.gradle.api.tasks.compile.compileoptions.html