Android 发布开源库到 JitPack (详细步骤)

简介: Android 发布开源库到 JitPack (详细步骤)

发布开源库到 JitPack


前言


最近这段时间,Google和jCenter的事情把开源库作者给搞懵了,jCenter还能使用一段时间,最近都是说迁移到mavenCentral上去,但是mavenCentral确实不太好迁移,所以退而求其次,选择JitPack。


 Jitpack的简单之处就在于,你只要把项目的代码提交到Github上之后,在打一个Release或者Tag,Jitpack就自动的帮你发布了一个新的版本,然后只要更新依赖就可以了,很方便,我个人是这么觉得的,虽说我没有写过什么开源依赖库,但是开源的小Demo我还是写了很多的,以帮助学习为主,这篇文章也是出于这个帮助的目的,下面进入正题。


正文


  希望这是你看过的最详细的关于发布项目到JitPack上的文章,我们从创建项目开始。


一、创建项目


打开你的AndroidStudio(我的版本 4.2.1),新建一个名为EasyLibrary的项目。


20210628163000197.png


点击Finish,完成项目的创建。


20210628163533322.png


下面进行依赖模块的创建。


二、模块创建与依赖


File → New → New Module…


2021062816380615.png


下面这个图要注意的是选择Android Library,然后输入模块名。


20210628164003442.png


点击Finish,模块创建完成之后,你就能看到这样的页面。


20210628164214893.png


可以看到easyutil与app是不同的图标,注意这一点,app是可运行模块,easyutil是可依赖模块。下一步就是app模块依赖easyutil模块,在依赖之后先看看app模块下的build.gradle


2021062816450864.png


此时dependencies闭包中是默认的依赖,下面来添加easyutil的依赖。点击下图的这个图标或者使用快捷键 Ctrl + Alt + Shift + S


20210628164556344.png


会弹出这样的弹窗。然后选择Dependencies ,按照下图的箭头进行操作。


20210628164856990.png


这就是给app模块添加一个依赖模块。


20210628165032144.png


勾选上easyutil,点击OK。


20210628165120819.png


此时你的app依赖内容里面就多了一个easyutil,点击OK,等待编译完成,再看看你的app下的build.gradle这里,多了一个依赖,此时依赖成功。


20210628165226411.png


三、测试依赖库


 目前依赖库里面什么都没有,因此是不是真的依赖成功了,都不知道,因此要测试一下,怎么测试呢,写几个方法,要是app模块能够调用不报错就说明依赖没有问题。在com.llw.easyutil下新建一个EasyToast类,里面的代码如下:



package com.llw.easyutil;
import android.content.Context;
import android.widget.Toast;
/**
 * EasyToast
 * @author llw
 */
public class EasyToast {
    /**
     * Toast
     */
    public static void show(final Context context, final CharSequence text) {
        Toast.makeText(context, text, Toast.LENGTH_SHORT).show();
    }
    /**
     * LongToast
     */
    public static void showLong(final Context context, final CharSequence text) {
        Toast.makeText(context, text, Toast.LENGTH_LONG).show();
    }
}

然后在app模块的MainActivity中调用一下。


20210628172550864.png


在手机或者模拟器上运行一下:


20210628172731805.png


依赖没有问题,下面对依赖库进行配置。


四、项目配置


打开工程的build.gradle,添加如下代码:


classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
maven { url "https://jitpack.io" }


添加位置如下图所示:


20210628190702217.png


再打开easyutil模块下的build.gradle,添加如下代码:


apply plugin: 'com.github.dcendents.android-maven'
group='com.github.lilongweidev'


添加位置如下图:


20210628190649363.png


这里的group表示你自己的仓库名称,比如我的github地址是这样的,


20210628191834483.png


那么就是group=‘com.github.lilongweidev’,按照自己的实际情况来写。


最后记得要点击Sync Now。


五、提交代码


 下面进行代码提交,首先保证自己的电脑上安装了git,git官网地址,找到安装版本下载,直接安装,注意安装的路径。安装好之后File → Settings


2021062818010476.png


在图中标注的地方配置刚才git的安装路径,然后点击右边的Test按钮测试一下,出现弹窗,里面显示Success则说明git没有问题,点击GitHub → Add Account… ,登录你的Github账号。


20210628181239209.png


登录好了,


20210628191047399.png


下面直接通过AndroidStudio来提交项目代码。


2021062819105184.png


第一次提交就相当于在GitHub上创建仓库


20210628191502788.png


点击Share


20210628191707769.png


点击Add.


20210628192138852.png


第一来说第一次提交是比较顺利,但是也不排除网络环境比较差的提交失败,那就很麻烦了,如果请评论区留言,提交成功之后,你的AS右下角会出现一个弹窗提示,如上图所示,点击找个蓝色字体,就会进入到你提交到GitHub上的仓库地址。


2021062819283073.png


六、创建Release&Tag版本


点击这个tags


20210628192949700.png


点击Create a new release


20210628193129673.png


填写资料,release版本号和标题,以及该版本的描述。


2021062819332934.png


向下滑动。


2021062819344188.png


上面有一个This is a pre-release的选中按钮,勾选上则表示这是一个预发布版本,不勾选就是正式发布版本,这里不勾选,点击Publish release。


20210628193713339.png


发布成功。


七、提交到JitPack


下面进入Jitpack


20210628194110112.png


我的地址仓库如下:https://github.com/lilongweidev/EasyLibrary

后续会持续更新这个库,作为我自己的开源库,增加一个APP开发过程中的常用工具类,敬请期待。


将仓库地址复制到这个输入框中,然后点击Look Up,


20210628194353351.png


然后会出现你的发布版本,再点击Get it。


20210628194653688.png


现在提交成功了,再点击一下这个Get it。会自动向下滑,然后会告诉你怎么样在项目中使用这个依赖库。


20210628194819463.png


八、测试依赖库


为了证明这个依赖库确实有效,你可以新建一个EaseTest项目,然后这样配置进去。

打开新建项目的build.gradle,配置


20210628195101476.png


maven { url 'https://jitpack.io' }


如下图所示:


20210628195517388.png


再打开app模块下的build.gradle,配置


implementation 'com.github.lilongweidev:EasyLibrary:1.0.0'

20210628195523839.png


然后Sync Now。


20210628195704657.png


在MainActivity中调用依赖库中的方法即可。运行一下


20210628200041288.png


九、依赖库升级


 网络依赖库会根据开发者和使用者的需要而改变或者增加一个功能API,因此对应的依赖库版本也要进行升级,否则就无法使用新增的功能API,还是拿我的哪个EasyLibrary来举例子,比如我现在更新了一些工具类。


20210707200338380.png


那么首先你要把这些更新的代码提交到GitHub上去,然后在GitHub上再发布一个release版本,比如我的库,


20210707200459149.png


现在最新是1.0.1,当我的代码提交之后我就要升级一个版本,也就是1.0.2。


20210707200613181.png


点击Draft a new release


20210707200832156.png


设置release版本以及更新版本的内容,然后点击Publish release进行版本发布。


20210707201004609.png


发布成功,现在进入jitpack,在输入框输入仓库地址,然后Look up你会看到刚才发布的1.0.2版本,


20210707201052603.png


点击Get it,等待一会儿,当这里的Log处有这个绿色文件时,说明已经在jitpack上生效了。


20210707201159761.png


这里就可以使用1.0.2版本了。


20210707201311347.png


然后再去你的使用这里依赖的地方改变一下版本号,然后Sync Now一下就可以使用新版本依赖库中的功能了。


SUCCESS,山高水长,后会有期~



相关文章
|
4天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
24 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
3月前
|
安全 API Android开发
Android网络和数据交互: 解释Retrofit库的作用。
Android网络和数据交互: 解释Retrofit库的作用。
38 0
|
4月前
|
XML Android开发 数据安全/隐私保护
Android 自定义开源库 EasyView
Android 自定义开源库 EasyView
|
8月前
|
定位技术 API 开发工具
Android 按照步骤接入百度地图API,定位显示不了解决办法
Android 按照步骤接入百度地图API,定位显示不了解决办法
229 0
|
3月前
|
JSON Java Android开发
Android网络和数据交互: 请解释Android中的JSON解析库,如Gson。
Android网络和数据交互: 请解释Android中的JSON解析库,如Gson。
24 0
|
3月前
|
Android开发
Android源码学习(五):AVB2.0-libavb库介绍2
Android源码学习(五):AVB2.0-libavb库介绍2
105 0
|
4月前
|
API Android开发
[Android]图片加载库Glide
[Android]图片加载库Glide
55 0
|
4月前
|
XML Java 语音技术
Android App开发在线语音识别处理中实现中文转拼音(Pinyin4j库)功能(超详细 附源码和演示)
Android App开发在线语音识别处理中实现中文转拼音(Pinyin4j库)功能(超详细 附源码和演示)
63 0
|
6月前
|
Java Android开发 C++
[笔记]Visual Studio 2015 开发安卓so库JNI层——回调调用
[笔记]Visual Studio 2015 开发安卓so库JNI层——回调调用
|
6月前
|
移动开发 Java 开发工具
[笔记]Visual Studio 2015 开发安卓so库JNI层——HelloWorld
[笔记]Visual Studio 2015 开发安卓so库JNI层——HelloWorld