Android Studio创建库文件用jitpack构建后使用implementation方式引用

2025年末12月31号

自己创建Android Library,并以依赖的方式引用

使用的Android Studio是较新的版本,2025.2.2 ,旧一些的版本应该也可以 ,在开始之前首先要有一个githhub账号,当然这不是问题。
一共分为三个步骤,比较简洁

一、创建和配置库文件:

  1. 使用Android Studio创建一个新的项目 ,并新建库module,可以是多个,如:library1, library2;
  2. 配置每个库文件的build.gradle.kts文件:
    a.头部插件模块添加maven
kotlin 复制代码
plugins {
    alias(libs.plugins.android.library)
    alias(libs.plugins.kotlin.android)
    id("maven-publish")
}
复制代码
  b. 在android节点中添加publishing
kotlin 复制代码
    publishing {
        singleVariant("release") {
            withSourcesJar()
            withJavadocJar()
        }
    }
复制代码
 c. 新增afterEvaluate配置
kotlin 复制代码
afterEvaluate {
    publishing {
        publications {
            // 创建一个名为 "release" 的发布配置
            create<MavenPublication>("release") {
                // 指定要发布的组件(通常是 release 版本的 AAR包)
                from(components["release"])

                // 配置 Maven 坐标,这是其他项目引用你的库时的唯一标识
                groupId = "com.github.andorid-xhs" // 通常是你的 GitHub 用户名或组织名,可以为包名
                artifactId = "mylibrary2" // 库的名称,通常与模块名一致
                version = project.extra["appVersion"] as? String // 版本号,jitpack将使用tag标签,这里是设置一个默认值
            }
        }
    }
}
  1. 可选:在根目录新建jitpack.yml文件,自定义配置。如:指定sdk版本,指定构建哪几个module等
kotlin 复制代码
jitpack:
  enable: true
jdk:
  -openjdk17
build:
  projects:
    -mylibrary
    -mylibrary2

二、上传github

  1. 在git上创建仓库,如repo,关联到AndroidStudio库项目,并推送文件到仓库
  2. 使用git设置tag并推送:
kotlin 复制代码
git tag -a 1.0.0 -m "develop 1.0.0"
git push origin 1.0.0

有些地方说tag的名字前要加个v,变成v1.0.0,这样引用的时候也需要加这个v,所以不如去掉

  1. 使用jitpack构建:打开https://jitpack.io,并粘贴自己的github库地址点击look up,左边Repositories列表会出现存在于github的所有项目,选中需要构建的项目,会自动构建

  2. 构建需要花几分钟,或者更长,成功后会出现按钮get it,点击就可以查看使用的语句;失败了就是Report,可以在旁边log中查看原因。

三、在项目中使用

  1. 在需要引用库文件的新项目中,根目录下setting.gradle.kts下dependencyResolutionManagement方法中,找到repositories{},添加maven的仓库地址:maven { url = uri("htttps://https://jitpack.io")};会引发同步操作,点击Sync now
kotlin 复制代码
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        //自己的github maven 仓库
        maven { url = uri("https://jitpack.io") }
    }
}
  1. 在项目级如app的build.gradle.kts中引入:implementation("com.github.android-xhs.mylibrary:mylibrary1:1.0.0"),
kotlin 复制代码
    implementation("com.github.android-xhs.mylibrary:mylibrary:1.0.0")
相关推荐
齊家治國平天下2 分钟前
AAOS 电源管理深度解析:休眠/唤醒/功耗优化
android·车载系统·aaos·aosp·电源管理·休眠唤醒·carpowermanager
Xzaveir27 分钟前
企业号码展示不可观测怎么办:状态机、拨测事件与异常回放
android·人工智能
2501_9160074736 分钟前
iOS和macOS应用程序性能分析和优化工具使用综合指南
android·macos·ios·小程序·uni-app·iphone·webview
黄林晴1 小时前
Nearby Connections 重大变更:不再自动开启 Wi-Fi / 蓝牙,适配指南
android
游戏开发爱好者81 小时前
iOS开发IDE有哪些 Xcode 和 快蝎 轻量替代方案
ide·vscode·ios·个人开发·xcode·swift·敏捷流程
恋猫de小郭1 小时前
Flutter 全新真 3D 实现,用 flutter_scene 能开发一个「我的世界」
android·前端·flutter
张太行_2 小时前
vscode在open folder如何设置默认路径
ide·vscode·编辑器
HLC++15 小时前
Linux的进程间通信
android·linux·服务器
爱笑鱼18 小时前
Binder(二):AIDL 生成的 Proxy、Stub 和 Parcel 到底在做什么?
android
爱笑鱼19 小时前
Binder(一):一次方法调用,究竟怎样跨进程执行?
android