In diesem Build wurden veraltete Gradle-Funktionen verwendet, wodurch es mit Gradle 5.0 nicht kompatibel ist

Lesezeit: 6 Minuten

In diesem Build wurden veraltete Gradle Funktionen verwendet wodurch es mit
Philipp Buhaievskiy

Ich habe einen Gradle FAILURE:

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

Fallschilderung:

  • An die Projekt-Codebasis die nächsten Bibliotheken angehängt:

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"
  • Aktualisiert die gradle-wrapper.properties

    distributionUrl=https….gradle-4.4-alle.zip zu 4.7-alle

  • nach all dem war gradle erfolg aufgebaut

  • erstellte die Test-CALS

    @TestInstance(TestInstance.Lifecycle.PER_CLASS)
      class TestClass {
    
      @Test
      internal fun testName() {
        Assert.assertEquals(2, 1 + 1)
      }
    }
    
  • lief den Test und bekam die FAILURE-Meldung.
    Geben Sie hier die Bildbeschreibung ein

  • führte den Gradle-Build mit einem Befehlszeilenargument aus ./gradlew --warning-mode=all um zu sehen, was genau die veralteten Funktionen sind.
    Geben Sie hier die Bildbeschreibung ein

Infolgedessen konnte ich die App nicht erstellen und habe diese FAILURE: -Meldung erhalten.

  • Das ist kein Versagen. Die App wird trotzdem kompiliert, oder?

    – EpicPandaForce

    31. Juli 2018 um 10:01 Uhr

  • Die App wird mit derselben Fehlermeldung kompiliert. 🙁

    – Philipp Buhaievskiy

    31. Juli 2018 um 10:21 Uhr

  • Das ist kein Versagen. Es wäre ein Fehler, wenn die App nicht kompiliert würde. Das ist bestenfalls a Warnung.

    – EpicPandaForce

    31. Juli 2018 um 10:35 Uhr


  • @ EpicPandaForce leider IST das wie gesagt eine Fehlermeldung. Die Frage bezieht sich nicht darauf, wie die Nachricht zu interpretieren ist, aber trotzdem meine Wertschätzung für Ihre Wirkung.

    – Philipp Buhaievskiy

    31. Juli 2018 um 11:23 Uhr

  • Versuchen Sie diese Lösung. Fügen Sie einfach etwas Code hinzu. stackoverflow.com/questions/54276381/…

    – Henrik Segercrantz

    25. Januar um 11:17 Uhr

1645911790 470 In diesem Build wurden veraltete Gradle Funktionen verwendet wodurch es mit
Hotkey

Führen Sie den Gradle-Build mit einem Befehlszeilenargument aus --warning-mode=all um zu sehen, was genau die veralteten Funktionen sind.

Sie erhalten eine detaillierte Beschreibung der gefundenen Probleme mit Links zu den Gradle-Dokumenten für Anweisungen zur Behebung Ihres Builds.

Hinzufügen --stacktrace Darüber hinaus können Sie auch feststellen, woher die Warnung kommt, wenn sie durch veralteten Code in einem der Plugins und nicht durch Ihr Build-Skript ausgelöst wird.

  • Beim Laufen react-native run-android --warning-mode all Ich bekomme error: unknown option --warning-mode'

    – Ren

    13. Mai 2019 um 17:03 Uhr


  • Versuchen Sie es mit Laufen gradle build --warning-mode=all

    – Jordan Daniels

    26. Mai 2019 um 23:12 Uhr

  • @Led, die Verfallswarnungen können aus zahlreichen Gründen auftreten, von veralteten Funktionen, die im Build-Skript verwendet werden, bis hin zu Gradle-Plugins von Drittanbietern, die veraltet sind oder fälschlicherweise die veraltete API aufrufen. Diese Antwort bietet eine Möglichkeit, herauszufinden, was genau Verfallswarnungen verursacht. Nachdem Sie dies gelernt haben, können Sie nach Lösungen für ein spezifischeres Problem suchen.

    – Hotkey

    10. März 2021 um 10:09 Uhr

  • @JordanDaniels Wo soll ich diesen Befehl im Android Studio Terminal hinzufügen? Wenn ich dort schreibe, bekomme ich: ‘gradle’ wird nicht als interner oder externer Befehl, lauffähiges Programm oder Batch-Datei erkannt.

    – Hassa

    8. August 2021 um 7:50 Uhr


  • Verwenden npx react-native run-android -- --warning-mode=all für React-Native

    – Lakshit Nagar

    22. August 2021 um 5:34 Uhr

Probier diese

cd android && ./gradlew clean && ./gradlew :app:bundleRelease

  • Danke, können Sie bitte erklären, warum diese ./gradlew :app:bundleRelease funktioniert und diese ./gradlew bundleRelease nicht.

    – Atikur Rahman Sabuj

    19. Mai 2020 um 9:24 Uhr

  • Bei meinem Cordova-9.0-Projekt hat es für mich perfekt funktioniert: D

    – Minifreak

    2. September 2020 um 6:35 Uhr

  • @AtikurRahmanSabuj Es hängt davon ab, wie die Datei ./gradlew geschrieben wurde. Da das Standardmodul in Android “App” ist, kann die Android-App mehrere Module haben. Auch ./gradlew only sollte nach der Reinigung funktionieren. Um alle Aufgaben im Gradlew zu sehen, führen Sie „./gradlew Tasks“ aus, das Ihnen die verfügbaren Aufgaben im Gradlew mitteilt.

    – Amr Ashraf

    23. November 2020 um 12:41 Uhr


  • Bei Apache Cordova und Android 9 kann der Fehler durch Aktivieren von AndroidX behoben werden. Informationen zum Aktivieren finden Sie unter: cordova.apache.org/announcements/2020/06/29/…

    – FC

    31. Dezember 2020 um 5:20 Uhr

Der folgende Prozess hat in meinem Fall funktioniert. Überprüfen Sie zuerst die Gradle-Version:

cd android
./gradlew -v

Bei mir waren es 6,5

Gehe zu https://developer.android.com/studio/releases/gradle-plugin und Sie erhalten die Plugin-Version für Ihre Gradle-Version. Für die Gradle-Version 6.5 ist die Plugin-Version 4.1.0

Dann geh zu app/build.gradle und ändern classpath 'com.android.tools.build:gradle:<plugin_version>

  • Sie ersparen mir nur 3 Tage Kopfschmerzen, um herauszufinden, wie ich das beheben kann. Tausend Dank.

    – cdaiga

    11. Oktober 2021 um 8:17 Uhr

  • für meinen Fall Gradle 7.2 welches Plugin 7.0 aber es funktioniert nicht.

    – Phok Chanrithisak

    26. Januar um 3:58

Ich bekam diesen Fehler. Es stellte sich heraus, dass es nur passierte, als ich die RN-Caches vollständig bereinigte (ziemlich aufwändiger Prozess) und dann einen Release-Build erstellte.

Wenn ich die Caches bereinigt, einen Debug-Build und dann einen Release-Build erstellt habe, hat alles funktioniert. Etwas besorgniserregend, aber funktioniert.

Hinweis: Mein sauberer Befehl ist …

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

Mein Projekt war mit Gradle 8.0 nicht kompatibel. Folgendes hat bei mir funktioniert:
Zuerst habe ich diese Codezeile im Android Studio-Terminal geschrieben:

./gradlew build --warning-mode all

Wenn Sie das tun, wird Ihnen im Logcat angezeigt, was in Ihrem Projekt als veraltet oder als Problem erkannt wurde, bei mir war es das jcenter() Repository, das in my entfernt werden musste settings.gradle Datei und ich musste auch aktualisieren classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.21" zu classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.30" in meinem build.gradle Projektdatei.

Nachdem ich diese Dinge getan hatte, wurde mein Projekt perfekt erstellt und auf meinem Emulator installiert

  • Ich habe bearbeitet settings.gradle und jcenter entfernt und die Warnung verschwand.

    – Benutzer2959589

    6. Januar um 7:42

  • Ich bin Neuling und wusste überhaupt nicht, wie ich den Vorschlag ausführen soll, den Warnmodus zu verwenden. Als ich Ihre Antwort zuerst las, blieb ich hängen, aber ich las und sah am Anfang, was Sie im Android Studio-Terminal sagten. Ich habe es versucht und die gleiche Ablehnung von jcenter() erhalten. Ich entfernte und die Warnung verschwand. WICHTIG: Danach müssen Sie das App-Projekt erneut mit der Gradle-Datei synchronisieren, da die App sonst nicht auf dem Emulator oder dem physischen Gerät installiert wird.

    – wocmultimedia

    17. Februar um 18:30 Uhr

1645911791 904 In diesem Build wurden veraltete Gradle Funktionen verwendet wodurch es mit
Mumit

in meinem Fall habe ich die aktualisiert build.gradle Datei und machen Sie die classpath auf neueste Version von 3.5.2 zu 3.6.3

dependencies {
        classpath("com.android.tools.build:gradle:3.6.3") 
    }

  • Ich habe bearbeitet settings.gradle und jcenter entfernt und die Warnung verschwand.

    – Benutzer2959589

    6. Januar um 7:42

  • Ich bin Neuling und wusste überhaupt nicht, wie ich den Vorschlag ausführen soll, den Warnmodus zu verwenden. Als ich Ihre Antwort zuerst las, blieb ich hängen, aber ich las und sah am Anfang, was Sie im Android Studio-Terminal sagten. Ich habe es versucht und die gleiche Ablehnung von jcenter() erhalten. Ich entfernte und die Warnung verschwand. WICHTIG: Danach müssen Sie das App-Projekt erneut mit der Gradle-Datei synchronisieren, da die App sonst nicht auf dem Emulator oder dem physischen Gerät installiert wird.

    – wocmultimedia

    17. Februar um 18:30 Uhr

1645911792 288 In diesem Build wurden veraltete Gradle Funktionen verwendet wodurch es mit
Begeisterter Programmierer

Wichtig – Antworten funktionieren nur für REACT-NATIVE VS CODE Terminal

In VisualStudio-Code müssen Sie wie unten ausgeführt werden, dann wird diese Warnung weggelassen.

React-native run-android warning-mode=all

Wenn Sie unten laufen, erhalten Sie den Fehler im Terminal.

868520cookie-checkIn diesem Build wurden veraltete Gradle-Funktionen verwendet, wodurch es mit Gradle 5.0 nicht kompatibel ist

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy