发布library到Maven仓库

被刻印的时光 ゝ 提交于 2019-12-09 18:17:21

发布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

本地仓库路径

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!