我们平时开发的时候经常会用到第三方库,一句代码就可以实现依赖,很方便对不对?今天一起来学习一下发布依赖库的几种方式,看完之后你也可以发布自己的第三方库,造轮子给别人用,是不是挺有成就感 (๑>◡<๑)
这种方式很简单,但是因为 Android Studio 默认不支持 jitpack,所以添加依赖的时候需要额外在工程根 build.gradle 文件里面添加 maven { url 'jitpack.io' }
1.创建一个工程,创建git仓库
2.分享到Github,填写Github的账号密码,提交上去就可以了。
3.打开自己的Github主页,找到这个工程,点releases
发布一个版本
填版本号,标题和描述都是选填的,点发布
4.打开jitpack.io/ 网站,输入你的Github项目地址,点 look up,选择需要发布的版本,Get it,就 OK 了
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/](https://bintray.com/),注意不要注册机构审查账号。 ![登陆页面](https://upload-images.jianshu.io/upload_images/3572981-87371451ab49b3e5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1024)
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 审核,一般第二天就会审核通过,审核通过后只会收到站内信,然后就可以直接依赖啦。