[英]Gradle Build Error - Program type already present
我正在嘗試構建一個具有兩個模塊的 android 項目,一個是應用程序,另一個是庫。 兩個模塊在各自的libs文件夾中都有gson-2.8.5.jar文件。 當我部署應用程序時,它在構建過程中失敗並顯示以下錯誤消息。
Program type already present: com.google.gson.FieldNamingPolicy$6
Message{kind=ERROR, text=Program type already present: com.google.gson.FieldNamingPolicy$6, sources=[Unknown source file], tool name=Optional.of(D8)}
但是,我通過用 gradle(實現 'com.google.code.gson:gson:2.8.5' )替換硬提供的 .jar 文件依賴項來測試我的設置,並且它運行良好。 但是我必須在 libs 文件夾中使用 jar 文件,因為我稍后將使用Android.mk文件來構建整個項目,因此不能依賴於 gradle 注入的依賴項。
我搜索了這個錯誤,但不幸的是沒有找到任何有用的結果。 希望有人知道如何解決這個問題。
搞定了似乎我必須將包含的模塊的transitive
屬性標記為false
。
前:
implementation project(path: ':myLib')
之后(修復):
implementation project(path: ':myLib', transitive: false)
與圖書館有同樣的問題:
implementation project(':library')
debugImplementation project(':library')
releaseImplementation 'com.library:1.0.0'
和
./gradlew project:assembleRelease
給出錯誤。
解決方案:應刪除implementation project(':library')
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.