android studio下 library打包文件(.aar)和本地引用
关键点:
利用Gradle发布本地maven库
支持android library 打包文件(*.aar) 的本地引用
开发环境:
windows7 64位操作系统
android studio0.5.8
(1) 安装maven
1.在安装maven之前,先确保已经安装JDK1.6及以上版本,并且配置好环境变量。
2.下载maven3,最新版本是Maven3.2.1 ,下载地址:http://maven.apache.org/download.html
下载apache-maven-3.2.1-bin.tar.gz文件后,并解压到D:\Dev\apache-maven-3.2.1
3.配置maven3的环境变量:先配置M2_HOME的环境变量,新建一个系统变量:M2_HOME ,路径是:D:\Dev\apache-maven-3.2.1
4.再配置path环境变量,在path值的末尾添加"%M2_HOME%\bin"
5.点击确定之后,打开cmd窗口:输入 mvn -version,出现如下内容表示安装成功。
(2) maven配置本地仓库
1.打开本地存放maven目录(或者maven安装目录,我的安装目录是:D:\cloud_cms\maven\apache-maven-3.1.1,这里没多大影响,我只是不同的项目有不同的仓库):
比如我的本地存放目录是:D:\Util\maven\apache-maven-3.1.1
2.打开conf文件夹下的settings.xml文件,找到第53行,把注释去掉,修改成:
<localRepository>D:/Util/maven/maven-dependcies</localRepository>
当然了,前提是在某个路径下,手动建立了一个名为 maven-dependcies的文件夹,然后把本地仓库指向该路径。
----利用Gradle发布本地maven库----
(3) 安装Gradle,将%GRADLE_HOME%\bin\gradle加入PATH。
1. 下载gradle-1.12-bin.zip,并解压到D:\Dev\gradle-1.12
2.配置Gradle的环境变量:先配置GRADLE_HOME的环境变量,新建一个系统变量:M2_HOME ,路径是:D:\Dev\gradle-1.12
3.再配置path环境变量,在path值的末尾添加"%GRADLE_HOME%\bin"
4.点击确定之后,打开cmd窗口:输入 Gradle -version,出现如下内容表示安装成功。
(4) 打包android library
对android library 进行打包直接在library项目下面使用gradle build 即可,然后,你就会在 build/libs 目录下看到两个*.aar文件,一个debug包用的,一个是release 下用的,看个人需求使用,这里我们用的是release 版本的 .aar 文件。
(5) Gradle发布aar包到Maven Repository
android library project 目录的 build/libs 下创建一个build.gradle 文件:
build.gradle:
-------------开始------------------------------
apply plugin: 'maven' // 启用maven 插件
group = 'group.pals.android'
artifacts {
//当前aar文件名
archives file('filechooser.aar')
}
uploadArchives {
repositories {
mavenDeployer {
repository(url: "file://C:/Users/cjl/.m2/repository")
pom.groupId = "group.pals.android"
pom.version = '0.1.0'
pom.artifactId = 'filechooser'
}
}
}
-------------结束------------------------------
在cmd命令窗口执行:
cd D:\iwork\filechooser\build\libs
gradle uploadArchives --info 查看上传的详细过程
即可完成包的发布。
----利用maven发布aar----
mvn -version
mvn install:install-file -Dfile=d:\mylibrary-{version}.aar -DgroupId=com.example -DartifactId=mylibrary -Dversion={version} -Dpackaging=aar
实例:
--将filechooser.aar发布到本地maven仓库
mvn install:install-file -Dfile=filechooser.aar -DgroupId=group.pals.android -DartifactId=filechooser -Dversion=0.1.0 -Dpackaging=aar
--将EnhancedListView-0.3.2.aar发布到本地maven仓库
mvn install:install-file -Dfile=EnhancedListView-0.3.2.aar -DgroupId=de.timroes.android -DartifactId=EnhancedListView -Dversion=0.3.2 -Dpackaging=aar
(6) Using local .aar Android library packages in gradle builds
app/build.gradle:
repositories {
mavenCentral()
mavenLocal()
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'group.pals.android:filechooser:0.1.0@aar'
compile 'com.android.support:appcompat-v7:+'
}
project/build.gradle:
allprojects {
repositories {
mavenCentral()
mavenLocal()
}
原文地址:http://www.cnblogs.com/janehlp/p/3725279.html
android studio下 library打包文件(.aar)和本地引用的更多相关文章
- Android Studio下多渠道打包
Android Studio下实现多渠道打包 直接上步骤 步骤 1. 清单文件添加属性(以友盟统计为例) 在application标签下添加meta-data属性 <application -- ...
- Android Studio下打jar包
在我们使用Eclipse时,我们常常使用的第三方类库文件大多都是jar包形式,用起来很方便.但是jar包只能打包class文件,对于Android UI类库而言,我们常常需要打包资源文件,对于界面不多 ...
- android studio开发工具的android library打包文件(.aar)本地引用
by 蔡建良 2014-5-13 关键点: 利用Gradle发布本地maven库支持android library 打包文件(*.aar) 的本地引用 开发环境: windows7 64位操作系统 a ...
- Android Studio下添加引用jar文件和so文件
博客: 安卓之家 微博: 追风917 CSDN: 蒋朋的家 简书: 追风917 博客园: 追风917 安卓开发中我们常会遇到jar文件和so文件的引用,下面介绍下在as下如何添加使用,这里以百度地图s ...
- Android Studio下导出jar包和aar包
Android Studio下导出jar包和aar包 jar包和aar包的区别 步骤 1. 创建Android工程 创建工程比较简单,不错复述 2. 创建一个Library(Module) 创建了一个 ...
- Android Studio下通过Gradle配置实现资源文件的模块化
当开发一个app模块个数很多的时候,资源文件就会特别多,布局也会多起来,这时所有的layout都放在同一个目录下,就会显得臃肿,而且不好找相应的布局. 最近看到相关资料,发现在Android Stud ...
- Android studio下gradle Robolectric单元测试配置
android studio下gradle Robolectric单元测试配置 1.Robolectric Robolectric是一个基于junit之上的单元测试框架.它并不依赖于Android提供 ...
- 如何通过Android Studio发布library到jCenter和Maven Central
http://www.jianshu.com/p/3c63ae866e52# 在Android Studio里,如果你想引入任何library到自己的项目中,只需要很简单的在module的build. ...
- Android Studio下jni应用
最近在将一个小应用从eclipse开发迁移到android studio,程序中有native代码实现,在eclipse是靠Android.mk这么个mk文件来组织编译的,但到android stud ...
随机推荐
- [RN] React Native 实现 类似京东 的 沉浸式状态栏和搜索栏
React Native 实现 类似京东 的 沉浸式状态栏和搜索栏 其原理其实就是在要 隐藏 部分的那个View 前面加入 StatusBar 代码! 代码如下: <StatusBar anim ...
- 【luoguP4720】【模板】扩展卢卡斯
快速阶乘与(扩展)卢卡斯定理 \(p\)为质数时 考虑 \(n!~mod~p\) 的性质 当\(n>>p\)时,不妨将\(n!\)中的因子\(p\)提出来 \(n!\) 可以写成 \(a* ...
- Kubeasz部署K8s基础测试环境简介
下面介绍使用Kubeasz部署K8s集群环境. https://github.com/easzlab/kubeasz在需要使用kubeeasz项目安装的k8s时,需要将所有需要它来部署的节点上,都安装 ...
- python: str()
tx1 = '中国' tx2 = u'中国' print tx1 print tx2 print type(tx1) print type(tx2) #<type 'str'> str() ...
- [原]使用global mapper 修改影像数据DOM的投影变换(将数据转换成osgearth支持的投影)
osgearth默认使用的投影基准面为: Geographic(Latitude/Longitude)的 WGS84 有这样一份数据需要修改: 1.在菜单栏种选择“工具”---->“配置” 2. ...
- (转nginx不浏览直接下载文件的解决方法
原文:https://www.zhan200.com/xwt/39.html 如果nginx配置不对,就会造成部分文件,在浏览器中不是直接预览,而是进行了下载.修改的方法是修改配置文件.具体解决方法如 ...
- CSAGAN的几大重点 - 2
1.生成器 1)MRU(SketchyGAN) 计算过程为: 与DCGAN[46]和ResNet生成架构的定性和定量比较可以在5.3节中找到.MRU块有两个输入:输入特征图xi和图像I,输出特征图yi ...
- PAT 甲级 1020 Tree Traversals (25分)(后序中序链表建树,求层序)***重点复习
1020 Tree Traversals (25分) Suppose that all the keys in a binary tree are distinct positive intege ...
- java继承实现的基本原理
方法调用的过程 寻找要执行的实例方法的时候,是从对象的实际类型信息开始查找的,找不到的时候,再查找父类类型信息. 动态绑定,而动态绑定实现的机制就是根据对象的实际类型查找要执行的方法,子类型中找不到的 ...
- LwIP应用开发笔记之二:LwIP无操作系统UDP服务器
前面我们已经完成了LwIP协议栈基于逻辑的基本移植,在这一节我们将以RAW API来实现UDP服务器. 1.UDP协议简述 UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包, ...