unbekannte Eigenschaft 'supportLibVersion' für Objekt vom Typ org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler

15

Ich erhalte folgenden Fehler

Die unbekannte Eigenschaft 'supportLibVersion' für das Objekt vom Typ org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHand konnte nicht abgerufen werden

Ich arbeite an einer reaktionsnativen Anwendung, und die Abhängigkeiten von reaktionsnativen Karten sind unten aufgeführt, in denen eine Fehlermeldung angezeigt wird

 dependencies {
      def supportLibMajorVersion = supportLibVersion.split('\\.')[0] as int
      def appCompatLibName =  (supportLibMajorVersion < 20) ? "androidx.appcompat:appcompat" : "com.android.support:appcompat-v7"
      implementation "$appCompatLibName:$supportLibVersion"
      implementation('com.facebook.react:react-native:+') {
        exclude group: 'com.android.support'
      }
      implementation "com.google.android.gms:play-services-base:${safeExtGet('playServicesVersion', '16.1.0')}"
      implementation "com.google.android.gms:play-services-maps:${safeExtGet('playServicesVersion', '16.1.0')}"
      implementation 'com.google.maps.android:android-maps-utils:0.5'
    }

Hat jemand eine Idee was hier falsch ist?

Der Fehler im Terminal ist

FAILURE: Build mit einer Ausnahme fehlgeschlagen.

Wobei:
Build-Datei 'D: \ Reaktion native \ abhishek \ Gwala \ Knotenmodule \ React-native-Maps \ lib \ android \ build.gradle' Zeile: 20

Was schief gelaufen ist: Bei
der Bewertung des Projekts ': react-native-maps' ist ein Problem aufgetreten.
Unbekannte Eigenschaft 'supportLibVersion' für Objekt vom Typ org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler konnte nicht abgerufen werden.

Zeile 20 ist

def supportLibMajorVersion = supportLibVersion.split('\\.')[0] as int
Abhishek Yadav
quelle

Antworten:

30

supportLibVersion = "28.0.0"Innen hinzufügen android/build.gradle->ext

Beispiel:

ext {
  buildToolsVersion = "28.0.3"
  minSdkVersion = 16
  compileSdkVersion = 28
  targetSdkVersion = 28
  supportLibVersion = "28.0.0"
}
Dhaval Kotecha
quelle
Hallo @Dhaval, danke für deine Antwort. Würde es Ihnen etwas ausmachen, Ihren Beitrag mit einer Erklärung zu bearbeiten, die anderen zeigen kann, wie Ihre Antwort das betreffende Problem löst?
Rob Streeting
arbeitete für mich. Fügen Sie einfach supportLibVersion = "28.0.0" zum ext-Abschnitt in der Datei build.gradle hinzu.
Batuhan Akkaya
Vielen Dank. Um die Dinge klarer zu machen, ist die Datei build.gradle, die bearbeitet werden soll, die in Android, nicht in Android / App. android / build.gradle hat das Buildscript {ext {}} oben.
Brian Hong
@ Mahdi Danke nach dem Kampf zwei Tage endlich eine Antwort bekommen, wird dies auch in
iOS gut funktionieren
@ Mahdi Wenn ich ein neues Projekt erstelle und React-Native-Maps hinzufüge, funktioniert es einwandfrei. Wenn ich mein altes Projekt verwende, wird eine Fehlermeldung angezeigt. Ich weiß nicht warum
Puneet Kansal
3

Versuchen Sie es direkt von Github zu installieren:

npm install --save git+https://[email protected]/react-native-community/react-native-maps.git

Irfan Khan
quelle
Danke, es hat funktioniert :)
Anshuman Pattnaik
2

Ich habe dieses Problem nach folgenden Schritten gelöst:

  1. Fügen Sie diese Zeile hinzu \node_modules\react-native-maps\lib\android\build.gradle -- line: 20

    def supportLibVersion = safeExtGet('supportLibVersion', '28.0.0')

  2. Im AndroidManifest.xmlUnter <application>:

    <uses-library android:name="org.apache.http.legacy" android:required="false"/>

Abdumutal Abdusamatov
quelle
0

In Ihrer Datei build.gradle im Android-Verzeichnis

(... / YourApp / android / build.gradle)

Finden Sie den ext-Abschnitt und fügen Sie hinzu

supportLibVersion = "28.0.0" ext {... supportLibVersion = "28.0.0"}

das sollte die Arbeit machen.

Roberto Ruiz Go
quelle