(1)自己项目中需要打包一个aar,这个aar含有第三方依赖。生成aar后,导入主项目,结果报错,第三方的类找不到。。。。
aar生成时,包含有第三方依赖,比如第三方的gson;aar项目的gradle:
api 'com.google.code.gson:gson:2.8.2'
项目引用aar时,报错 ClassNotFound异常,gson不能用。
解决办法:
需要上传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/'
}
}
设置好后,在需要引用aar的项目app的gradle下添加依赖
implementation 'com.my.test:myaar:1.0.0'
编译运行,发现第三方OkGo可以在项目中使用了。。。OK
(2)上传云端 githup
从文件夹 repository开始,全部上传,目录如下:
在项目中引用,在跟bulid中添加引用,
maven{
url"https://raw.githubusercontent.com/wuliuwei/repository/master"
}
其中:wuliuwei为Github用户名,repository为项目名,其它固定不变
maven { url "https://raw.githubusercontent.com/GitHub用户名/仓库项目名/master" }