文档章节

发布library到Maven仓库

addcn
 addcn
发布于 2016/01/22 16:32
字数 782
阅读 470
收藏 2

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

本地仓库路径

© 著作权归作者所有

上一篇: RxJava&MVP&Retrofit
下一篇: 自动化构建
addcn
粉丝 12
博文 53
码字总数 13824
作品 0
深圳
程序员
私信 提问
10分钟用Jitpack发布开源库

1、概述 项目开发中无论Java web 还是Android 都会用到很多开源库,他们一般通过Maven/Gradle依赖进来的。 现在Maven的两个主要仓库是: - Maven center - Bintray jcenter 你有上传JAR或者A...

javen205
2017/07/22
0
0
Apache Maven、Maven仓库、Jcenter仓库

版权声明:本文为sydMobile原创文章,转载请务必注明出处! https://blog.csdn.net/sydMobile/article/details/78460169 文章最早发布于我的微信公众号 AndroidDeHome 中,欢迎大家扫描下面二...

sydmobile
2017/11/06
0
0
如何使用Android Studio把library分享到jCenter和Maven Central

原文:How to distribute your own Android library through jCenter and Maven Central from Android Studio 如果你想在Android Studio中引入一个library到你的项目,你只需添加如下的一行代......

中成才
2015/09/11
193
0
android 多aar上传私人maven服务器

前言 为了精简目前底层的基础组件库, 拆分出必要依赖项目(有一定精简)和完全的依赖项目, 第一想法是在library上构建变种(Variant)版本, 一次发布所有的变种,在研究了一些相关的资料后, 最后完...

toothpickTina
2017/11/10
0
0
Android Studio把library分发到jCenter和Maven Central

如果你想在Android Studio中引入一个library到你的项目,你只需添加如下的一行代码到模块的build.gradle文件中。 1 2 3 dependencies { compile 'com.inthecheesefactory.thecheeselibrary:...

vane_
2015/07/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

除了敲代码,程序员还需要哪些必备技能?

1、源码分析专题 详细介绍源码中所用到的经典设计思想,看看大牛是如何写代码的,提升技术审美、提高核心竞争力。 帮助大家寻找分析源码的切入点,在思想上来一次巨大的升华。知其然,并知其...

别打我会飞
37分钟前
3
0
Java集合框架——List接口

第三阶段 JAVA常见对象的学习 集合框架——List接口 按照集合框架的继承体系,我们先从Collection中的List接口开始学习 (一) 概述及功能(ArrayList演示) (1) 概述 List在Collection中充当着...

BWH_Steven
今天
2
0
Lua Web快速开发指南(10) - 利用MQ实现异步任务、订阅/发布、消息队列

Lua Web快速开发指南(10) - 利用MQ实现异步任务、订阅/发布、消息队列 本章节我们将学习如何使用MQ库. MQ库简介 MQ库实现了各类消息代理中间件(Message Broker)的连接协议, 目前支持:redis、...

水果糖的小铺子
今天
2
0
一致性专题之cpu缓存一致性(一)

只要涉及到缓存的业务场景就一定会出现数据一致性问题。对于该问题,从微观的角度来看cpu与内存之间建立了N级缓存来提高效率,从宏观的角度来看分布式存储使用数据副本机制来提高数据的安全性...

FAT_mt
今天
8
0
Qt那些事0.0.20

一个装逼失败的例子 今天原本是给别人介绍 QML 中 Behavior 的用法。毕竟自己在之前用过很多次,感觉已经算是熟练的地步,可以为人师了。于是乎自己写了个代码,还屁颠屁颠的把别人喊过来,指...

Ev4n
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部