发布library到Maven仓库

本文深入解析了如何将Android库发布至Maven仓库,包括使用Gradle进行发布、配置JCenter和MavenCentral、使用Nexus搭建私有仓库等内容,并详细讨论了依赖传递的原理和常见问题解决方法。

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

发布library到Maven仓库

参考文章

https://github.com/xiaopansky/android-library-publish-to-jcenter/blob/master/README.md

####依赖传递 Gradle默认支持传递性依赖,比如当前工程依赖包A,包A依赖包B,那么当前工程会自动依赖包B。同时,Gradle支持排除和关闭依赖性传递。

之前引入远程AAR,一般会这样写:

compile 'com.somepackage:LIBRARY_NAME:1.0.0@aar' 上面的写法会关闭依赖性传递,所以有时候可能就会出问题,为什么呢?本来以为@aar是指定下载的格式,但其实不然,远程仓库文件下载格式应该是由pom文件中packaging属性决定的,@符号的真正作用是Artifact only notation,也就是只下载文件本身,不下载依赖,相当于变相的关闭了依赖传递,可以看一下sf的这个问题,通过添加transitive=true可以解决。但其实如果远程仓库有pom文件存在,compile后面根本不需要加"@aar",也就不会遇到这个问题了。

####内部搭建

####发布内部

####本地仓库、内网仓库、远程仓库

http://www.jianshu.com/p/0e7b8e14f0cd/comments/1050253# http://www.coder4.com/archives/4706 http://ju.outofmemory.cn/entry/60685

本地仓库路径

repository(url: "file://C:/Users/cjl/.m2/repository")

对android library 进行打包直接在library项目下面使用gradle build 即可,然后,你就会在 build/libs 目录下看到两个*.aar文件,一个debug包用的,一个是release 下用的,看个人需求使用,这里我们用的是release 版本的 .aar 文件。

发布成功后可以USER_HOME/.m2/setting.xml中指定的在本地仓库目录
secondriver\viewlibrary\1.0.0中看到viewlibrary-1.0.0.aar文件。 mavenLocal() compile 'secondriver:viewlibrary:1.0.0@aar'

https://m.oschina.net/blog/478402

本地仓库路径

转载于:https://my.oschina.net/addcn/blog/608123

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值