web-dev-qa-db-ja.com

Oracle JDK 14を使用すると、すべてのGradle(6.2.2)タスクが「クラスorg.codehaus.groovy.runtime.InvokerHelperを初期化できませんでした」と失敗します。

JDK 14をインストールして使い始めました。ただし、Gradle 6.2.2を使用するプロジェクトは機能せず、Gradleタスクを呼び出そうとするたびに、次のエラー「クラスorg.codehaus.groovy.runtime.InvokerHelperを初期化できませんでした」が表示されます。他のプロジェクト、例えばmavenプロジェクトと単純なJavaプロジェクトは問題なく動作します。

このエラーを再現する簡単な方法は、新しいフォルダーを作成し、initタスクを実行することです。例えば:

gradle init --type basic

失敗:ビルドは例外で失敗しました。

  • 問題点:org.codehaus.groovy.runtime.InvokerHelperクラスを初期化できませんでした

  • 試してください:--stacktraceオプションを指定して実行し、スタックトレースを取得します。 --infoまたは--debugオプションを指定して実行し、より多くのログ出力を取得します。 --scanを付けて実行すると、完全な洞察が得られます。

  • https://help.gradle.org でさらにヘルプを取得します

ビルドは878msで失敗しました

この例では、Windows 10を実行しているPCです。Javaバージョンは次のとおりです。

Java-バージョン

Java 14 2020-03-17 Java(TM)SEランタイム環境(ビルド14 + 36-1461)

Java HotSpot(TM)64ビットサーバーVM(ビルド14 + 36-1461、混合モード、共有)

Gradle 6.2.2をOracle JDK 14で動作させるために、この問題の解決策はありますか?

6
Spyros K

上記のコメントと Gradle 6.2.2で指摘したように。互換性 a Javaバージョン8〜13が必要です。Java 14以降のバージョンはGradle 6.2.2ではまだサポートされていません。

Gradle 6.3リリース以降の更新された回答:

Gradle 6.3、JDK 14をサポート Gradle 6.3リリースノート に従って。

次のソリューションが適用されます。

  • Gradle 6.2.2を使い続けるには:

    1. 互換性のあるJDKバージョン(8-13)をインストールします。
    2. このバージョンを使用するようにgradle.propertiesを変更します。たとえば、JDK 13が次の場所にインストールされている場合:C:/ Program Files/Java/jdk-13.0.2次の行がgradle.properties

      org.gradle.Java.home=C:/Program Files/Java/jdk-13.0.2

  • JDK14を使い続けるため。

    1. Gradle 6.3以降をインストールして使用する

システムをセットアップした後、正しいバージョンを実行していることを確認してください。たとえば、Java 14およびGradle 6.3を使用すると、次のような結果が得られます。

タイプC:\>gradle --version次のようにして、gradleバージョンを取得します。

C:> gradle --version

Gradle 6.3

ビルド時間:2020-03-24 19:52:07 UTCリビジョン:
bacd40b727b0130eeac8855ae3f9fd9a0b207c60

Kotlin:1.3.70 Groovy:2.5.10 Ant:2019年9月1日にコンパイルされたApache Ant(TM)バージョン1.10.7 JVM:14(Oracle Corporation 14 + 36-1461)OS:Windows 10 10.0 AMD64

タイプJava --version Javaバージョンを取得するには:

C:> Java --version Java 14 2020-03-17 Java(TM)SE Runtime Environment(build 14 + 36-1461)Java HotSpot( TM)64ビットサーバーVM(ビルド14 + 36-1461、混合モード、共有)

Gradleラッパーを使用する場合、次のコマンドを使用してGradleラッパーをバージョン6.3に変更できます。

gradleラッパー--gradle-version = 6.3

16
Spyros K