web-dev-qa-db-ja.com

このビルドでは非推奨のGradle機能が使用されていたため、Gradle 5.0と互換性がありません

私はgradle FAILUREを持っています:

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

ケースの説明:

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

APP/build.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 to4.7-all

  • そのすべてのグラドルが成功を収めた後

  • テストcalssを作成しました

    @TestInstance(TestInstance.Lifecycle.PER_CLASS)
      class TestClass {
    
      @Test
      internal fun testName() {
        Assert.assertEquals(2, 1 + 1)
      }
    }
    
  • テストを実行し、FAILUREメッセージを受け取りました。 enter image description here

  • コマンドライン引数./gradlew --warning-mode=allを使用してGradleビルドを実行し、廃止された機能が正確に何であるかを確認しました。 enter image description here

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

23

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

ビルドを修正する方法については、Gradleのドキュメントへのリンクを使用して、見つかった問題の詳細な説明を提供します。

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

28
hotkey

Gradle-wrapper-propertiesファイルのdistributionUrlパスを次のように設定します。

distributionUrl = https://services.gradle.org/distributions/gradle-4.10.2-all.Zip

1
Gautam Dev

このエラーが発生していました。 RNキャッシュを完全に消去し(非常に手の込んだプロセス)、リリースビルドを作成したときにのみ発生したことが判明しました。

キャッシュを消去し、デバッグビルドを作成してからリリースビルドを作成すると、すべてが機能しました。少し心配ですが動作します。

注:私のクリーンコマンドは...

rm -r Android/build ; rm -r Android/app/src/release/res ; rm -r Android/app/build/intermediates ; watchman watch-del-all ; rm -rf $TMPDIR/react-* ; npm start -- --reset-cache

1
chichilatte

重要-REACT-NATIVE VS CODEターミナルのみの回答作業

VisualStudioコードでは、次のように実行する必要があります。その場合、警告は省略されます。

react-native run-Android warning-mode = all

以下で実行すると、react-native run-Android --warning-mode allを実行しているときにターミナルでエラーが発生します:不明なオプション--warning-mode '

0
Jaya Kumar

最終的に、junit 5をjunit 4にダウングレードし、テスト環境を再構築することにしました。

0

サードパーティの依存関係を更新します。 たとえば依存関係をimplementation 'com.github.ybq:Android-SpinKit:1.1.0'からimplementation 'com.github.ybq:Android-SpinKit:1.2.0'に更新しました。そして私の場合、問題は解決されました。

0
Hiren