自己生成aar包時,含有第三方依賴,匯入專案使用
阿新 • • 發佈:2018-12-16
自己專案中需要打包一個aar,這個aar含有第三方依賴。生成aar後,匯入主專案,結果報錯,第三方的類找不到。。。。
aar生成時,包含有第三方依賴,比如第三方的OkGo;aar專案的gradle:
api ('com.lzy.net:okgo:3.0.4'){transitive=true}
專案引用aar時,報錯 ClassNotFound異常,OkGo不能用。
解決辦法:
需要上傳aar,不管上傳本地還是maven,就行了。
1、上傳本地。在aar庫的gradle裡面配置下面這樣的程式碼:
apply plugin: 'maven' uploadArchives{ repositories.mavenDeployer{ // 本地倉庫路徑D:\WorkSpace // repository(url: uri('../repository')) repository(url:"file://D://WorkSpace/myaar/repository/") // 唯一標識 pom.groupId = "com.my.test" // 專案名稱 pom.artifactId = "myaar" // 版本號 pom.version = "1.0.0" } }
在Terminal裡面執行命令:gradlew uploadArchives,成功之後會在相應目錄下看到上傳的aar檔案。
然後再專案的gradle下配置repository,
buildscript { repositories { maven{ url 'file://D://WorkSpace/myaar/repository/' } } } allprojects { repositories { maven{ url 'file://D://WorkSpace/myaar/repository/' } }
設定好後,在app的gradle下新增依賴
implementation 'com.my.test:myaar:1.0.0'
編譯執行,發現第三方OkGo可以在專案中使用了。。。OK
待續。。。