我们平时开发的时候经常会用到第三方库,一句代码就可以实现依赖,很方便对不对?今天一起来学习一下发布依赖库的几种方式,看完之后你也可以发布自己的第三方库,造轮子给别人用,是不是挺有成就感 (๑>◡<๑)
方式一:发布到 jitpack
这种方式很简单,但是因为 Android Studio 默认不支持 jitpack,所以添加依赖的时候需要额外在工程根 build.gradle 文件里面添加 maven { url 'https://jitpack.io' }
1.创建一个工程,创建git仓库 创建git仓库 2.分享到Github,填写Github的账号密码,提交上去就可以了。 上传到Github 3.打开自己的Github主页,找到这个工程,点releases 工程主页 发布一个版本 发布新版本 填版本号,标题和描述都是选填的,点发布 创建新版本4.打开 https://jitpack.io/ 网站,输入你的Github项目地址,点 look up,选择需要发布的版本,Get it,就 OK 了
jitpack 发布jitpack 发布方式简单快速,有以下几点需要注意:
- 创建 module 的时候,Android Library 最终生成的是 aar包,Java Library 对应 jar包。
- 工程单依赖的情况下(一个app依赖一个module),最终生成的依赖包是被依赖的那个 module。
- 如果工程里有多个module相互依赖,直接打包的话是会生成多个依赖包的,如需要生成指定 module 的依赖包,需要如下操作:
1.在工程根 build.gradle 文件里 buildscript - dependencies 添加 :
classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
注意此处的插件版本号要跟你的 gradle 插件版本号相匹配,匹配关系表查看:
https://github.com/dcendents/android-maven-gradle-plugin#note-on-releases
2.在需要打包的 module 的 build.gradle 文件顶部添加插件:
apply plugin: 'com.github.dcendents.android-maven'
方式二:发布到 jcenter
这种方式稍微复杂一点,但因为是 Android Studio 创建工程时的默认仓库地址,别人依赖的时候不需要在根 build.gradle 添加额外的代码
1.去 bintray 注册一个账号:https://bintray.com/,注意不要注册机构审查账号。
2.查看账户密钥,拿小本本记下来,上传的时候要用到的。
右上角头像 密钥 3.创建一个仓库,记住仓库名 用户主页
4.在工程根 build.gradle 文件 buildscript - dependencies 里添加插件依赖
classpath 'com.novoda:bintray-release:0.9'
// 注意此处的版本号,网上的教程 90% 的失败原因都是因为插件版本号没配置好,
// 插件 Github 主页:https://github.com/novoda/bintray-release
// 插件 release 页面可以查看适配版本:https://github.com/novoda/bintray-release/releases
5.在需要发布的 module 的 build.gradle 文件的最外层添加
apply plugin: 'com.novoda.bintray-release'
publish {
userOrg = '******' // bintray用户名
repoName = 'maven' // bintray仓库名
groupId = 'com.*****.*****' // 决定最后依赖的路径
artifactId = '********' // 决定最后依赖的名称
publishVersion = '1.0.0' // 决定最后依赖的版本号
desc = '********************' // 描述
website = '********************' // 项目网站,可以用 Github 地址
dryRun = false // true-仅运行 false-运行+上传
}
// 最终依赖的路径
compile 'groupId:artifactId:publishVersion'
6.在 Android Studio 的 Terminal 执行发布命令
// mac
./gradlew clean build bintrayUpload -PbintrayUser=bintray用户名 -PbintrayKey=bintray密钥
// windows
gradlew clean build bintrayUpload -PbintrayUser=bintray用户名 -PbintrayKey=bintray密钥
7.看到 BUILD SUCCESSFUL 就是发布成功了,网页里打开 bintray 上创建的仓库,会发现里面已经多了刚才上传的依赖包,好奇的宝宝可以测试一下,在工程根 build.gradle 文件 allprojects - repositories 里面添加
maven { url 'https://dl.bintray.com/用户名/仓库名' }
module 的 build.gradle 文件里添加
项目主页
8.此时的你可能会疑惑,为什么还是要在工程根 build.gradle 文件里添加额外的代码?别急我们还差最后一步,提交到 jcenter 审核,一般第二天就会审核通过,审核通过后只会收到站内信,然后就可以直接依赖啦。
发布 jcenter
有问题的小伙伴在下面留言哦 ~
网友评论