このビルドでは非推奨の Gradle 機能が使用されており、Gradle 5.0 と互換性がありません。質問する

このビルドでは非推奨の Gradle 機能が使用されており、Gradle 5.0 と互換性がありません。質問する

Gradle FAILURE が発生しました:

..."Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0."

ケースの説明:

  • 次のライブラリをプロジェクト コードベースに添付します。

APP/ビルド.gradle

    //(Required) Writing and executing Unit Tests on the JUnit Platform 
testImplementation "org.junit.jupiter:junit-jupiter-api:5.2.0"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.2.0"
    // (Optional) If you need "Parameterized Tests"
testImplementation "org.junit.jupiter:junit-jupiter-params:5.2.0"
    // (Optional) If you also have JUnit 4-based tests
testImplementation "junit:junit:4.12"
testRuntimeOnly "org.junit.vintage:junit-vintage-engine:5.2.0"

testImplementation "io.mockk:mockk:1.8.5"
  • gradle-wrapper.propertiesを更新しました

    distributionUrl=https....gradle- 4.4-all .zip から4.7-all

  • 結局Gradleは成功しました

  • テストクラスを作成しました

    @TestInstance(TestInstance.Lifecycle.PER_CLASS)
      class TestClass {
    
      @Test
      internal fun testName() {
        Assert.assertEquals(2, 1 + 1)
      }
    }
    
  • テストを実行すると、FAILURE メッセージが表示されました。ここに画像の説明を入力してください

  • ./gradlew --warning-mode=all非推奨の機能が正確に何であるかを確認するために、コマンドライン引数を使用して Gradle ビルドを実行しました。ここに画像の説明を入力してください

その結果、アプリをビルドできず、「FAILURE:」というメッセージが表示されました。

ベストアンサー1

--warning-mode=all非推奨の機能が正確に何であるかを確認するには、コマンドライン引数を使用して Gradle ビルドを実行します。

見つかった問題の詳細な説明と、ビルドを修正する方法を説明する Gradle ドキュメントへのリンクが表示されます。

さらに--stacktrace、警告がビルド スクリプトではなく、プラグインの 1 つにある古いコードによってトリガーされた場合、警告の発生元を正確に特定することもできます。

おすすめ記事