[Android] 實作dagger2 遇到的錯誤Execution failed for task ':app:checkDebugDuplicateClasses'. & Could not find method kapt() for arguments
在build.gradleb導入
kapt "com.google.dagger:dagger-compiler:2.12"
的時候產生的錯誤 Could not find method kapt() for arguments
這個還好說,只要將加入 id 'kotlin-kapt'
plugins {
//加入
id 'kotlin-kapt'
}
的以上的錯誤就解決囉~ 另外就算成功導入dagger,build的過程會再出現以下錯誤 Execution failed for task ':app:checkDebugDuplicateClasses'. 請在 gradle.properties 檔案加入這行:
android.enableJetifier=true
PS: android.enableJetifier=true 表示android插件會通過重寫二進制文件檔來自動遷移現有的第三方lib,以使用AndroidX依賴項。 未設置時默認為false
以上是光是在導入lib dagger的時候就會產生的問題。
至於如何實作dagger到自己的專案中,我先把資料放到參考裡,有機會再寫。
參考 referenece:
https://developer.android.com/training/dependency-injection/dagger-android?hl=zh-tw解決Execution failed for task ':app:checkDebugDuplicateClasses'.https://stackoverflow.com/questions/56716047/execution-failed-for-task-appcheckdebugduplicateclasses-ionic4-androidhttps://blog.csdn.net/u014175785/article/details/115295136Could not find method kapt() for arguments
https://stackoverflow.com/questions/38833242/unresolved-reference-daggerapplicationcomponent
實作dagger (ps: 其實參考的文章非常多,但太多了主要是以這三篇為主)https://medium.com/jastzeonic/dagger-2-kotlin-%E9%82%A3%E4%B8%80%E5%85%A9%E4%BB%B6%E4%BA%8B%E6%83%85-3206bd69c8a6https://givemepass.blogspot.com/2019/10/retrofit_30.htmlhttps://xlet.medium.com/android-dagger2-%E5%88%9D%E5%AD%B8%E7%AD%86%E8%A8%98-%E4%BB%A5-kotlin-%E9%80%B2%E8%A1%8C%E5%B8%B8%E7%94%A8%E5%87%BD%E5%BC%8F%E5%BA%AB%E4%BE%9D%E8%B3%B4%E6%B3%A8%E5%85%A5-a34202f25afb實作之程式下載:https://drive.google.com/file/d/1EJTAwByQuDN7dslsT5hmLIii8bpoEbB9/view?usp=drive_linkandroid developer對於DAGGER實作介紹:https://developer.android.com/codelabs/android-dagger#1
留言
張貼留言