原文:关于Jitpack发布aar,会丢失内置依赖库问题 | Stars-One的杂货小窝

关于发布aar出现的一个大坑排查,折腾了两天,终于是找到了解决方案

问题描述

有这样的一个情况,我新建了个Android的module,然后里面有依赖EventBus这个开源库,之后发布到Jitpack上

新项目引用我发布的那个库,然后运行的时候就报了个错误,说是找不到EventBus这个库

问题排查

显示排查了依赖的问题

最初以为,是依赖的方式不对,因为之前看相关资料,如果是module的话,使用compile关键字进行依赖的话比较好

但是之后尝试发现,使用apiimplementation,依赖都没有加上去

jitpack可以查看我们库的pom.xml文件,虽然jitpack提供的文档没有提及,下面的地址就是你发布库的地址

https://javadoc.jitpack.io/com/github/stars-one/android-component-libray/

从图中可以看到,有个列表展示了不同的路径名,知道maven的结构的同学应该很熟悉了

这里,我的项目是个多module,所以就会有多个不是版本号的文件夹,如果是单个module的话,应该是只有版本号的文件夹

其实就是一层层下去就可以找到我们的pom.xml文件了

我首先是排查了下某个module中的pom.xml文件,果不其然,里面依赖全都是空

从图中可以看到,有个列表展示了不同的路径名,知道maven的结构的同学应该很熟悉了

这里,我的项目是个多module,所以就会有多个不是版本号的文件夹,如果是单个module的话,应该是只有版本号的文件夹

其实就是一层层下去就可以找到我们的pom.xml文件了

我首先是排查了下某个module中的pom.xml文件,果不其然,里面依赖全都是空

如下图所示:

连dependencies的标签没有,怪不得需要重新依赖了,知道了原因之后,于是上网搜索答案

终于是在bing搜索找到了一个关键信息,即下面的解决方法(还是stackflow网站靠谱 )

解决方案

将你的插件android-maven-gradle-plugin升级到2.0版本

  classpath 'com.github.dcendents:android-maven-gradle-plugin:2.0'

参考

关于Jitpack发布aar,会丢失内置依赖库问题的更多相关文章

  1. 用内置的库turtle来画一朵花,python3

    题目:用内置的库turtle来画一朵花 看了群主最后成像的图片,应该是循环了36次画方框,每次有10度的偏移. 当然不能提前看答案,自己试着写代码. 之前有用过海龟画图来画过五角星.奥运五环.围棋盘等 ...

  2. 第四节:配置的读取、StartUp类、内置依赖注入和扩展改造

    一. 配置的读取 在Asp.Net Core中,有一个 appsettings.json 文件,用于存储相应的配置信息,读取的时,要通过构造函数注入:IConfiguration Configurat ...

  3. .Net Core 3.0 内置依赖注入:举例

    原文:.Net Core 3.0 内置依赖注入:举例 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn ...

  4. python 内置标准库socketserver模块的思考

    socketserver模块简化了编写网络服务器的任务, 在很大程度上封装了一些操作, 你可以看成是事件驱动型的设计, 这很不错.它定义了两个最基本的类--服务器类 BaseServer, 请求处理类 ...

  5. 基于Cython和内置distutils库,实现python源码加密(非混淆模式)

    起因 python本身只能做混淆,不能加密,多年的商业软件开发经验导致有某种"洁癖"欲望,将py编译打包 尝试 pyinstaller原理是freeze打包pyc文件,利用工具可完 ...

  6. 阻止YII 1.0自动加载内置JQUERY库

    有些时候我们会在项目中用到很多js库, 因为Yii 1.0框架会默认自动加载一些自带核心库, 很容易引起冲突问题, 下面的代码就展示了如何在Yii 1.0框架下取消jQuery自动加载. Open C ...

  7. ThinkPHP内置标签库原理(Cx标签库)

    任何一个模板引擎的功能都不可能是为你量身定制的,具有一个良好的可扩展 机制也是模板引擎的另外一个考量,Smarty采用的是插件方法来实现扩展,ThinkTemplate由于采用了标签库技术,比Smar ...

  8. [pathlib]内置pathlib库的常用属性和方法

    pathlib中的Path类可以创建path路径对象, 属于比os.path更高抽象级别的对象. 官网 from pathlib import Path path = Path(__file__) p ...

  9. iOS使用自定义字体的方法(内置和任意下载ttf\otf\ttc字体文件)

    最近做了个有关阅读的应用,使用了自定义字体,学习了一下这方面的知识. 1.首先是最简单也普遍的做法,打包内置字符库文件: 把字体库文件添加到工程,如font1.ttf添加到工程,然后在工程plist添 ...

  10. 数据结构-队列(3)-使用Java内置队列

    大多数流行语言都提供内置的队列库,因此您无需重新发明轮子. 如前所述,队列有两个重要的操作,入队 enqueue 和出队 dequeue. 此外,我们应该能够获得队列中的第一个元素,因为应该首先处理它 ...

随机推荐

  1. css 修改复选框的样式

    效果图: 实现代码如下: /* 选中input标签类型为复选框的 */ input[type="checkbox"] { width: 16px; height: 16px; ve ...

  2. 【游戏】C语言实现扫雷游戏(超详细备注和解释)

    C语言实现扫雷游戏 求个赞求个赞求个赞求个赞 谢谢 先赞后看好习惯 打字不容易,这都是很用心做的,希望得到支持你 大家的点赞和支持对于我来说是一种非常重要的动力 看完之后别忘记关注我哦!️️️ 文章目 ...

  3. javascript按钮通过cookie限制60s后才可以点击

    javascript按钮通过cookie限制60s后才可以点击 1️⃣ 首先创建一个html页面,放入一个按钮 2️⃣ 设置点击按钮的触发函数 一般当点击按钮都会有一些业务需要,在需求结束后,触发sa ...

  4. Liunx知识点整理

    Linux知识点整理 目录和文件 ls (list)显示当前目录下的文件或目录 a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出) l 除文件 ...

  5. C语言无锁高并发安全环形缓冲队列设计(一)

    1.前言 队列,常用数据结构之一,特点是先进先出. 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限 ...

  6. ABC270F 题解

    和博客园一样好的体验 思路 首先看到花最小代价使得所有点连通,果断转换成最小生成树问题. 接下来就要考虑怎么建图,首先陆地就正常连不用说,建机场和港口的代价貌似都是点权,考虑转成边权.因为一个点飞或者 ...

  7. 2024年,我又开始用Linux桌面作为主力系统了~

    前言 19年的时候我买了一个 matebook14 笔记本,配置是8代i5和8G内存,在当时看来作为轻薄本是够用的,但是现在已经2024年了,这内存让我想起来去年苹果的新款 mac mini ,丐版三 ...

  8. Host跨网段的ARP request

    写得很清楚的文章:ARP协议在同网段及跨网段下的工作原理 对应的官方ARP文档:RFC 826 对文档的解读:详解RFC 826文档 ARP跨网段进行request包发送,需要先检测自身子网是否与对方 ...

  9. Smartctrl 命令使用说明

    一.smartctl工具简介  Smartmontools是一种硬盘检测工具,通过控制和管理硬盘的SMART(Self Monitoring Analysis and Reporting Techno ...

  10. 【Unity3D】法线贴图和凹凸映射

    1 法线贴图原理 ​ 表面着色器中介绍了使用表面着色器进行法线贴图,实现简单快捷.本文将介绍使用顶点和片元着色器实现法线贴图和凹凸映射,实现更灵活. ​ 本文完整代码资源见→法线贴图和凹凸映射. ​ ...