by 蔡建良 2014-5-13

关键点:

利用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()
}

最新文章

  1. [翻译]AKKA笔记 - 有限状态机 -1
  2. BLE 信道
  3. 总结一下在ASP.NET中开发网站的一般步骤
  4. 类似 go get &ndash;u 的命令行参数实现
  5. Android 音乐播放器之--错误状态下调用导致的异常
  6. SSH思路
  7. [swustoj 785] Divide Tree
  8. DB天气app冲刺第八天
  9. Hibernate中对象的三种状态以及Session类中saveOrUpdate方法与merge方法的区别
  10. java poi 合并单元格后边框问题
  11. Spyder调试错误-&quot;TypeError: decoding Unicode is not supported&quot;
  12. MySQL 修改字段类型或长度
  13. 七、vue中v-for有时候对页面不会重新渲染,数组变化后如何到渲染页面
  14. python进阶(4):初始面向对象
  15. SSL WSS HTTPS
  16. 通用查询设计思想(2)- 基于ADO.Net的设计
  17. K60用IRA通过j-link下载失败,解决方法
  18. saiku环境搭建
  19. 解决jmeter中文乱码的三种方法
  20. 如何将Skyline66嵌入WPF中

热门文章

  1. NIM博弈的必胜取法
  2. iOS 开发--Objective-C 反射机制
  3. 【Spring开发】—— Spring Core
  4. 读取redis中的数据时出现:MISCONF Redis is configured to save RDB snapshots
  5. SQLServer错误代码解释
  6. http://www.myexception.cn/program/767123.html
  7. 【查找结构3】平衡二叉查找树 [AVL]
  8. CentOS服务器的基本配置和查看
  9. 3、Spring整合Hibernate
  10. Docker+K8S实践