Android Jitpack制作远程仓库aar流程

打印 上一主题 下一主题

主题 990|帖子 990|积分 2970

开发高效提速系列目录

  • 软件多语言文案脚本主动化方案
  • Android Jitpack制作远程仓库aar流程

  
博客创建时间:2023.08.24
博客更新时间:2023.08.24
以Android studio gradle=8.7,SDKVersion 34来分析解说。如图文和网上其他资料不一致,可能是别的资料版本较低而已。
背景

多年的Android工作,希望制作一个属于自己的Android 开发库,便于日常的使用。于是想到制作一个远程依赖库,通过比较多种方式,最终选定使用Jetpack的方案。通过自己亲测实验,按照网上一些人写的Jitpack aar制作方法踩了不少坑,最终总结一下制作远程仓库aar包的流程,克制各人踩同样的坑大概使用了不靠谱的方案。
aar制作与使用

1. aar制作


  • 在制作aar之前先创建一个工程,创建两个library分别为Jitpack和Res,在两个module中分别创建两个类

  • Jitpack和Res的build.gradle文件中设置maven-publish插件

  • 添加jitpack.yml文件,不然会构建远程aar会失败
    1. jdk:
    2. - openjdk17
    3. #  如果还要指定特别的版本,还需要输入以下内容:
    4. #before_install:
    5. #  - sdk install java 11.0.10-open
    6. #  - sdk use java 11.0.10-open
    复制代码
  • 在library 的build.gradle文件中设置artifactId参数
    1. dependencies {
    2.    ...
    3. }
    4. afterEvaluate {
    5.     publishing {
    6.         publications {
    7.             // Creates a Maven publication called "release".
    8.             release(MavenPublication) {
    9.                 from components.release
    10.                 groupId = 'com.gitee.xuanyuanxinyu'
    11.                 artifactId = 'Res'
    12.                 version = '1.0.9'
    13.             }
    14.         }
    15.     }
    16. }
    复制代码
  • 将项目打一个tag取名如v1.2.0,将其pull到远程仓库,然后就能在远程仓库看到新的tag(我用的是gitee)


  • 然后在https://jitpack.io 搜刮你的远程仓库,你会发现jitpack在主动帮你打包制作aar。当让https://jitpack.io 需要举行登陆和设置,这个简单百度一下就好

  • 打开Jitpack构建日记,发现构建乐成,且生成了Res.aar和Jitpack.aar两个,这就是方便我们一个项目中同时制作多个module aar库

2. aar使用

aar远程包制作好后接下来就是如何使用

  • 在需要使用的Project的settings.gradle中设置远程依赖仓库
  1. dependencyResolutionManagement {
  2.     repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
  3.     repositories {
  4.         google()
  5.         mavenCentral()
  6.         maven { url "https://jitpack.io" }
  7.     }
  8. }
复制代码

  • 在需要使用的module中设置库依赖,如我在app模块中依赖使用
  1. implementation 'com.gitee.xuanyuanxinyu:SmartJitpack:1.2.0'
复制代码


  • 使用aar中的资源


假如在一个groupId中有多个artifactId,如我这有两个artifactId 为Res和JitPack,假如只想使用此中一个aar则可以差异性设置·
  1. // 仅依赖Res library
  2. implementation("com.gitee.xuanyuanxinyu.SmartJitpack.Res:1.2.0")
  3. // 仅依赖Jitpack  library
  4. implementation("com.gitee.xuanyuanxinyu.SmartJitpack.Jitpack:1.2.0")
  5. // 同时依赖Res和Jitpack library
  6. implementation("com.gitee.xuanyuanxinyu:SmartJitpack:1.2.0")
复制代码
异常解决


  • No matching variant of com.android.tools.build:gradle:X.X.0 was found
    Jitpack中提示构建失败,提示错误如下

失败原因
这是因为Java 编译版本错误引起的
解决方案
添加一个jitpack.yml就解决了
  1. jdk:
  2.   - openjdk17
  3. #  如果还要指定特别的版本,还需要输入以下内容:
  4. #before_install:
  5. #  - sdk install java 11.0.10-open
  6. #  - sdk use java 11.0.10-open
复制代码
总结

最新最简单jitpack制作aar包教程,也可以参考我的Gitee Demo Project,希望能帮助你我他。
gitee地址:https://gitee.com/xuanyuanxinyu/SmartJitpack
参考资料:
Jitpack官方文档:https://docs.jitpack.io](https://docs.jitpack.io
Jitpack Github:https://docs.jitpack.io/
Jitpack官网:https://docs.jitpack.io/

相关链接

  • 软件多语言文案脚本主动化方案
  • Android Jitpack制作远程仓库aar流程

扩展链接:

  • 项目开发肴杂从初识到明白
博客书写不易,您的点赞收藏是我前进的动力,万万别忘记点赞、 收藏 ^ _ ^ !

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

小秦哥

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表