propriété inconnue 'supportLibVersion' pour l'objet de type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler

15

Je reçois l'erreur suivante

Impossible d'obtenir la propriété inconnue 'supportLibVersion' pour l'objet de type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHand

Je travaille sur l'application native de react et les dépendances de react-native-maps sont ci-dessous dans lesquelles je reçois une erreur

 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'
    }

Quelqu'un a une idée de ce qui ne va pas ici?

L'erreur dans le terminal est

ÉCHEC: la construction a échoué avec une exception.

Où:
Créer le fichier 'D: \ react native \ abhishek \ Gwala \ node_modules \ react-native-maps \ lib \ android \ build.gradle' ligne: 20

Ce qui n'a pas fonctionné:
Un problème s'est produit lors de l'évaluation du projet ': react-native-maps'.
Impossible d'obtenir la propriété inconnue 'supportLibVersion' pour l'objet de type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

la ligne 20 est

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

Réponses:

30

Ajouter à l' supportLibVersion = "28.0.0"intérieur android/build.gradle->ext

exemple:

ext {
  buildToolsVersion = "28.0.3"
  minSdkVersion = 16
  compileSdkVersion = 28
  targetSdkVersion = 28
  supportLibVersion = "28.0.0"
}
Dhaval Kotecha
la source
Bonjour @Dhaval, merci pour votre réponse. Pourriez-vous modifier votre message avec une explication qui peut enseigner aux autres comment votre réponse résout le problème en question?
Rob Streeting
travaillé pour moi. ajoutez simplement supportLibVersion = "28.0.0" à la section ext du fichier build.gradle.
Batuhan Akkaya
Merci. Pour clarifier les choses, le fichier build.gradle qui doit être modifié est celui d'Android, pas d'Android / app. android / build.gradle a buildscript {ext {}} en haut.
Brian Hong
@Mahdi Merci après deux jours de lutte enfin obtenir une réponse, est-ce que cela fonctionnera bien dans iOS également
Puneet Kansal
@Mahdi si je crée un nouveau projet et que j'ajoute des cartes réactives natives, alors cela fonctionne bien si j'utilise mon ancien projet, je reçois une erreur je ne sais pas pourquoi
Puneet Kansal
3

Essayez de l'installer directement depuis github:

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

Irfan Khan
la source
Merci ça a fonctionné :)
Anshuman Pattnaik
2

J'ai résolu ce problème après ces étapes:

  1. Ajoutez cette ligne à \node_modules\react-native-maps\lib\android\build.gradle -- line: 20

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

  2. Dans le AndroidManifest.xmldessous <application>:

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

Abdumutal Abdusamatov
la source
0

Dans votre fichier build.gradle dans le répertoire android

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

trouver la section ext et ajouter

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

cela devrait faire le travail.

Roberto Ruiz Go
la source