【JitPack】发布一个你自己的 Android 依赖库

本文详细记录了创建Android Library项目、配置Gradle、提交到GitHub、创建tag及发布release版本的过程,并介绍了如何使用JitPack生成并集成依赖库。关键步骤包括添加maven-publish插件、配置发布信息、提交代码、创建tag和发布release,以及在项目中引入生成的依赖。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景


最近突然想开发个 Android Library,提供 Android 依赖库给其他开发者简单使用。

前期踩坑略多,这里做个记录。

步骤

新建 Android Library 项目


新建一个 Project 工程,再新建一个 Library 模块 taostfree。项目结构如下:

在这里插入图片描述
githubzouqi/toastfree 工程地址

有疑问的同学可以查看工程结构,这里就不细说了。

配置 Gradle


  • toastfree 模块下的 build.gradle 文件中添加 maven-publish 插件
plugins {
    id 'com.android.library'
    id 'maven-publish'
}
  • 添加上传方法(官方建议)
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    ...
}

afterEvaluate {
    // 官方建议使用上传方法
    publishing {
        publications {
            // Creates a Maven publication called "release".
            release(MavenPublication) {
                from components.release // 表示发布 release(jitpack 都不会使用到)
                groupId = 'com.github.githubzouqi' //groupId 随便取 , 这个是依赖库的组 id
                artifactId = 'toastfree'  //artifactId 随便取 , 依赖库的名称(jitpack 都不会使用到)
                version = '1.0.5' // 当前版本依赖库版本号,这个jitpack不会使用到,只是我们开发者自己查看
            }
        }
    }
}

这里没啥可说的,上面注释已经写的很详细。

  • 完整 gradle 配置
plugins {
    id 'com.android.library'
    id 'maven-publish'
}

android {
    compileSdkVersion 30
    buildToolsVersion "30.0.2"

    defaultConfig {
        minSdkVersion 19
        targetSdkVersion 30
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        consumerProguardFiles 'consumer-rules.pro'
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }


}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    implementation 'com.android.support:appcompat-v7:28.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

afterEvaluate {
    // 官方建议使用上传方法
    publishing {
        publications {
            // Creates a Maven publication called "release".
            release(MavenPublication) {
                from components.release // 表示发布 release(jitpack 都不会使用到)
                groupId = 'com.github.githubzouqi' //groupId 随便取 , 这个是依赖库的组 id
                artifactId = 'toastfree'  //artifactId 随便取 , 依赖库的名称(jitpack 都不会使用到)
                version = '1.0.5' // 当前版本依赖库版本号,这个jitpack不会使用到,只是我们开发者自己查看
            }
        }
    }
}


提交项目到 github


这个也是比较简单,同学们自己根据实际来提交即可。

我这里是已经提交过了,说下我的操作:关联远程库,提交到暂存区,拉取远端开发分支(我这里是 dev)到本地,然后合并,合并成功后再 push 到远端开发分支即可。

在这里插入图片描述
上面是我通过 Git Bash 的一次完整的提交过程,仅供参考。

Pull Request 到主分支


后面是通过给主分支创建 tag 分支,打 release 包。所以我这里会先拉取一下从 dev 分支到主分支的请求。

熟悉 github 的同学也比较了解,这里不多细说。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上面就是一次完整的 pull requests,仅供参考。

创建 tag 并发布 release 版本


我这里创建 tag 使用 github 做演示,同学们熟悉 git 命令的可以使用命令进行创建。

  • 进到 release 打包页。如下图:
    在这里插入图片描述
    在这里插入图片描述

这里能看到所有打过的 release 版本信息。

  • 新建 tag 并发布 release
    在这里插入图片描述
    在这里插入图片描述

输入新分支名称后点击回车,即可创建 tag v1.0.6 。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

到这里就完成了 github 相关的 release 打包操作。

JitPack 生成项目的依赖库


打开 JitPack 官网 https://jitpack.io/,输入项目地址。点击 Look Up,然后等待 builds 完成后生成库依赖。

在这里插入图片描述

等待 Get it 按钮变成绿色后,就表示生成库依赖成功了。

在这里插入图片描述

使用也比较简单,如下:

在这里插入图片描述

第三方应用集成使用依赖库


  • project 下的 build.gradle 文件中配置
allprojects {
    repositories {
    	...
        maven{ url 'https://jitpack.io' }
    }
}

在这里插入图片描述

  • 模块下的 build.gradle 中添加依赖
dependencies{
	...
	implementation 'com.github.githubzouqi:ToastFree:v1.0.6'
}

然后 sync 重新构建一下项目,成功后可以发现依赖添加成功了。

在这里插入图片描述

  • MainActivity.java 中使用依赖库
    在这里插入图片描述
    上面说明依赖库成功添加,可以使用库里的 api

JitPack 生成依赖库的 pom.xml 文件地址

https://javadoc.jitpack.io/com/github/{github用户名}/{github项目名}/

在这里插入图片描述
输入对应的版本路径即可查看对应版本库里的所有文件(也包括 pom.xml 文件)。

参考链接


JitPack > Android

发布Android库到Jitpack,只需三步

使用jitpack发布你自己的依赖库

gradle7.0.2如何发布jitpack开源项目

关于Jitpack发布aar,会丢失内置依赖库问题


技术永不眠!我们下期见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值