Android Jitpack制作远程仓库aar流程

2024-08-24 16:12

本文主要是介绍Android Jitpack制作远程仓库aar流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

开发高效提速系列目录

  1. 软件多语言文案脚本自动化方案
  2. Android Jitpack制作远程仓库aar流程

Android Jitpack制作远程仓库aar流程

  • 背景
  • aar制作与使用
    • 1. aar制作
    • 2. aar使用
  • 异常解决
  • 总结

博客创建时间:2023.08.24
博客更新时间:2023.08.24

以Android studio gradle=8.7,SDKVersion 34来分析讲解。如图文和网上其他资料不一致,可能是别的资料版本较低而已。

背景

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

aar制作与使用

1. aar制作

  1. 在制作aar之前先创建一个工程,创建两个library分别为Jitpack和Res,在两个module中分别创建两个类
    在这里插入图片描述

  2. Jitpack和Res的build.gradle文件中配置maven-publish插件
    在这里插入图片描述

  3. 添加jitpack.yml文件,不然会构建远程aar会失败

    jdk:- openjdk17#  如果还要指定特别的版本,还需要输入以下内容:
    #before_install:
    #  - sdk install java 11.0.10-open
    #  - sdk use java 11.0.10-open
    
  4. 在library 的build.gradle文件中配置artifactId参数

    dependencies {...
    }
    afterEvaluate {publishing {publications {// Creates a Maven publication called "release".release(MavenPublication) {from components.releasegroupId = 'com.gitee.xuanyuanxinyu'artifactId = 'Res'version = '1.0.9'}}}
    }
    
  5. 将项目打一个tag取名如v1.2.0,将其pull到远程仓库,然后就能在远程仓库看到新的tag(我用的是gitee)
    [图片]
    [图片]

  6. 然后在https://jitpack.io 搜索你的远程仓库,你会发现jitpack在自动帮你打包制作aar。当让https://jitpack.io 需要进行登陆和配置,这个简单百度一下就好
    [图片]

  7. 打开Jitpack构建日志,发现构建成功,且生成了Res.aar和Jitpack.aar两个,这就是方便我们一个项目中同时制作多个module aar库
    [图片]

2. aar使用

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

  1. 在需要使用的Project的settings.gradle中配置远程依赖仓库
dependencyResolutionManagement {repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)repositories {google()mavenCentral()maven { url "https://jitpack.io" }}
}
  1. 在需要使用的module中配置库依赖,如我在app模块中依赖使用
implementation 'com.gitee.xuanyuanxinyu:SmartJitpack:1.2.0'

[图片]

  1. 使用aar中的资源[图片]
    [图片]

如果在一个groupId中有多个artifactId,如我这有两个artifactId 为Res和JitPack,如果只想使用其中一个aar则可以差异性配置·

// 仅依赖Res library
implementation("com.gitee.xuanyuanxinyu.SmartJitpack.Res:1.2.0")// 仅依赖Jitpack  library
implementation("com.gitee.xuanyuanxinyu.SmartJitpack.Jitpack:1.2.0")// 同时依赖Res和Jitpack library
implementation("com.gitee.xuanyuanxinyu:SmartJitpack:1.2.0")

异常解决

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

失败原因
这是因为Java 编译版本错误引起的
解决方案
添加一个jitpack.yml就解决了

jdk:- openjdk17#  如果还要指定特别的版本,还需要输入以下内容:
#before_install:
#  - sdk install java 11.0.10-open
#  - 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/


相关链接

  1. 软件多语言文案脚本自动化方案
  2. Android Jitpack制作远程仓库aar流程

扩展链接:

  1. 项目开发混淆从初识到理解

博客书写不易,您的点赞收藏是我前进的动力,千万别忘记点赞、 收藏 ^ _ ^ !

这篇关于Android Jitpack制作远程仓库aar流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1102962

相关文章

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

springboot启动流程过程

《springboot启动流程过程》SpringBoot简化了Spring框架的使用,通过创建`SpringApplication`对象,判断应用类型并设置初始化器和监听器,在`run`方法中,读取配... 目录springboot启动流程springboot程序启动入口1.创建SpringApplicat

通过prometheus监控Tomcat运行状态的操作流程

《通过prometheus监控Tomcat运行状态的操作流程》文章介绍了如何安装和配置Tomcat,并使用Prometheus和TomcatExporter来监控Tomcat的运行状态,文章详细讲解了... 目录Tomcat安装配置以及prometheus监控Tomcat一. 安装并配置tomcat1、安装

MySQL的cpu使用率100%的问题排查流程

《MySQL的cpu使用率100%的问题排查流程》线上mysql服务器经常性出现cpu使用率100%的告警,因此本文整理一下排查该问题的常规流程,文中通过代码示例讲解的非常详细,对大家的学习或工作有一... 目录1. 确认CPU占用来源2. 实时分析mysql活动3. 分析慢查询与执行计划4. 检查索引与表

Git提交代码详细流程及问题总结

《Git提交代码详细流程及问题总结》:本文主要介绍Git的三大分区,分别是工作区、暂存区和版本库,并详细描述了提交、推送、拉取代码和合并分支的流程,文中通过代码介绍的非常详解,需要的朋友可以参考下... 目录1.git 三大分区2.Git提交、推送、拉取代码、合并分支详细流程3.问题总结4.git push

Android kotlin语言实现删除文件的解决方案

《Androidkotlin语言实现删除文件的解决方案》:本文主要介绍Androidkotlin语言实现删除文件的解决方案,在项目开发过程中,尤其是需要跨平台协作的项目,那么删除用户指定的文件的... 目录一、前言二、适用环境三、模板内容1.权限申请2.Activity中的模板一、前言在项目开发过程中,尤

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2