properti tidak dikenal 'supportLibVersion' untuk objek bertipe org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler


15

Saya mendapatkan kesalahan berikut

Tidak dapat memperoleh properti 'supportLibVersion' yang tidak dikenal untuk objek bertipe org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHand

Saya sedang mengerjakan aplikasi reaksi-asli dan dependensi reaksi-peta-asli di bawah ini di mana saya mendapatkan kesalahan

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

Adakah yang tahu apa yang salah di sini?

Kesalahan dalam terminal adalah

KEGAGALAN: Build gagal dengan pengecualian.

Di mana:
Bangun file 'D: \ react native \ abhishek \ Gwala \ node_modules \ react-native-maps \ lib \ android \ build.gradle' baris: 20

Apa yang salah:
Terjadi masalah saat mengevaluasi proyek ': react-native-maps'.
Tidak dapat memperoleh properti 'supportLibVersion' yang tidak dikenal untuk objek bertipe org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

jalur 20 adalah

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

Jawaban:


30

Tambahkan supportLibVersion = "28.0.0"di dalam android/build.gradle->ext

contoh:

ext {
  buildToolsVersion = "28.0.3"
  minSdkVersion = 16
  compileSdkVersion = 28
  targetSdkVersion = 28
  supportLibVersion = "28.0.0"
}

Hai @Dhaval, terima kasih atas jawaban Anda. Maukah Anda mengedit posting Anda dengan penjelasan yang dapat mengajari orang lain bagaimana jawaban Anda memecahkan masalah yang dimaksud?
Rob Streeting

bekerja untukku. cukup tambahkan supportLibVersion = "28.0.0" ke bagian ext di file build.gradle.
Batuhan Akkaya

Terima kasih. Untuk membuatnya lebih jelas, file build.gradle yang akan diedit adalah yang ada di android, bukan di android / app. android / build.gradle memiliki buildscript {ext {}} di atas.
Brian Hong

@ Mahdi Terima kasih setelah perjuangan dua hari akhirnya mendapatkan jawaban, apakah ini akan berfungsi dengan baik di ios juga
Puneet Kansal

@ Mahdi jika saya membuat proyek baru dan menambahkan reaksi-asli-peta maka itu berfungsi dengan baik jika saya menggunakan proyek lama saya maka saya mendapatkan kesalahan. Saya tidak tahu mengapa
Puneet Kansal


3

Coba pasang langsung dari github:

npm install --save git+https://git@github.com/react-native-community/react-native-maps.git


Terima kasih itu berhasil :)
Anshuman Pattnaik

2

Saya memecahkan masalah ini setelah langkah-langkah ini:

  1. Tambahkan baris ini ke \node_modules\react-native-maps\lib\android\build.gradle -- line: 20

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

  2. Di AndroidManifest.xmlbawah <application>:

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



0

Di file build.gradle Anda di dalam direktori android

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

temukan bagian ext dan tambahkan

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

yang seharusnya melakukan pekerjaan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.