发布Library到JCenter
Posted Android-kongqw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了发布Library到JCenter相关的知识,希望对你有一定的参考价值。
发布Library到JitPack
我们正常创建一个android Studio工程,添加一个Module
(后面称为Library Module)作为我们想要发布到JitPack
的Library
- 在工程
build.gradle
文件中添加android-maven
插件
buildscript
ext.kotlin_version = 'xxx'
repositories
……
dependencies
……
classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
- 在
Library Module
的build.gradle
中添加android-maven
插件,并配置GitHub
apply plugin: 'com.github.dcendents.android-maven'
……
android
……
defaultConfig
……
……
group = 'com.github.kongqw'
dependencies
……
至此,我们基础的工作就做完,可以在Library Module
封装功能了。
验证
当我们搭建完基础工程或者封装完部分功能,可以准备发布的时候,在Terminal
执行以下命令
./gradlew install
提交到GitHub
提交主Module
和Library Module
以及gradle的基础配置文件就不做多说,要注意的是将gradle
目录提交,因为里面包含Gradle版本等相关信息,如果没有上传,JitPack会使用默认的版本,可能出现一些问题。
发布到JitPack
-
我们到GitHub工程下,添加一个Release版本,添加一个版本名,例如
1.0
版本,或者再提交代码时,添加一个Tag,以备我们生产Library
时使用 -
使用
GitHub
账号登录到 https://jitpack.io/,找到我们的工程,可以看到我们添加的Release版本,在对应的版本后面点击Get it
按钮,开始生成。
到此,自己开源的一个Library,就发布成功了。
发布混合Library
场景:有时,我们的Library集成了很多的功能,但是使用者可能不需要全部都用到,这时候我们可以把Library拆分成多个模块,使用者可以按需导入,而不需要把整个Library全部导入,从而减小apk的体积。
方式和前面的方法一样,同样的,将需要才分的模块,在新建一个Library中实现即可,步骤参照上文,只是在导入时略有区别,我们通常在导入的时候格式是这样的:
implementation "com.github.<USER>:<REPO>:<version>"
现在可以按需导入
implementation "com.github.<USER>.<REPO>:<library-module>:<version>"
举一个直观的栗子:
假设我的KBox里面有
common
和ui
等等多个模块, 下面的导入的方式会将所有模块同时导入到工程
implementation 'com.github.kongqw:KBox:0.0.1'
但是KBox里有很多功能使用者可能是用不到的,假如他只想用
common
或者ui
其中的某个模块,那么可以按照下面的方式按需导入:
implementation 'com.github.kongqw.KBox:common:0.0.1'
implementation 'com.github.kongqw.KBox:ui:0.0.1'
以上是关于发布Library到JCenter的主要内容,如果未能解决你的问题,请参考以下文章
如何使用android studio把自己的android library分享到jcenter和maven central
如何将Android studio中Library发布到Jcenter
Android studio 发布Android Library项目到JCenter