ไม่พบวิธี Gradle DSL: 'kapt ()'


99

ไม่พบเมธอด Gradle DSL: 'kapt ()' สาเหตุที่เป็นไปได้: โปรเจ็กต์ 'jetpacklearn' อาจใช้ปลั๊กอิน Android Gradle เวอร์ชันที่ไม่มีเมธอด (เช่น 'testCompile' ถูกเพิ่มใน 1.1.0) อัปเกรดปลั๊กอินเป็นเวอร์ชัน 3.4.0 และซิงค์โปรเจ็กต์

โครงการ 'jetpacklearn' อาจใช้ Gradle เวอร์ชันที่ไม่มีเมธอด เปิดไฟล์ Gradle wrapper

gradleVersion ของฉันคือ '3.4.0' แต่ไม่สามารถจัดการกับมันได้โปรดถามคำถามเดียวกันกับฉัน

    classpath "com.android.tools.build:gradle:$gradleVersion"
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
    classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigationVersion"

3
เหตุใดจึงลดลง เป็นคำถามที่ถูกต้องและคุณพบข้อความแสดงข้อผิดพลาดนี้โดยทำตามเอกสารอย่างเป็นทางการของ Android ยิ่งไปกว่านั้นคำแนะนำในตัวในข้อความแสดงข้อผิดพลาดยังสับสนและไม่ถูกต้อง (พูดถึงการอัปเกรดเป็น Gradle 1.0 เมื่อเราใช้เวอร์ชัน 3.x)
Andrew Koster

คำตอบ:


209

ตรวจสอบว่าคุณมีสิ่งนี้อยู่ด้านบนของ app build.gradle หรือไม่?

apply plugin: 'kotlin-kapt'

2
เอกสารอย่างเป็นทางการของ Android บอกให้ฉันใช้ kapt ใน Depedencies {} โดยไม่ต้องพูดถึงเรื่องนี้เลย Google ทำได้ดีมาก
El Sushiboi

82

เพิ่มบรรทัดนี้

apply plugin: 'kotlin-kapt'

หากคุณใช้ kapt ในไลบรารี Androidคุณต้องเพิ่มปลั๊กอินkotlin-androidในโครงการของคุณ

apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'

1
ขอบคุณมาก. นี่คือปัญหาของฉัน แม้แต่เอกสาร Android สำหรับการเริ่มต้นใช้งาน Hilt ก็ไม่ได้กล่าวถึงเรื่องนี้ developer.android.com/training/dependency-injection/…
Cb32019


22

เพิ่มสิ่งนี้ใน build.gradle ของคุณจากนั้นซิงค์ gradle อีกครั้ง

ใช้ปลั๊กอิน: 'kotlin-kapt'



โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.