什么是Maven呢?
Maven 是一个项目管理和自动构建工具
那我们为什么要搭建Maven的私有仓库呢?
- 有的公司不能访问外网,故通过搭建私有仓库来管理库文件、插件等;
- 有的公司网速比较慢,故可以通过搭建私有仓库来获取库文件或者插件,速度比较快;
- 有的公司经常会开发一些常用工具或者组件,故可以通过搭建私有仓库来共享给其他开发者,有利于统一维护和管理。
环境搭建
1、JDK 1.8
一般做Android开发都有搭建,没有的,自行百度教程
2、Maven 下载地址
现在maven版本是3.3.9,下载以下的版本:
3、Nexus3下载 下载地址
下载解压后有两个文件: nexus-3.2.1-01和sonatype-work,在nexus-3.2.1-01\etc下有个nexus-default.properties文件,修改application-port=8081为8083,8081可能会被其他端口占用
4、环境验证
安装好以上环境之后可以通过mvn --version和java -version验证是否安装成功
然后在nexus.exe所在目录用命令行执行nexus.exe /run,不要双击打开nexus.exe,因为你发现根本打不开,哈哈
如果出现以上信息说明你已正确的安装了环境,接着就可以在浏览器输入输入localhost:8083,账号默认为admin,密码为admin123
5、 创建仓库
登录完之后
复制仓库地址,待会在Android Studio 会用到
6、Android Studio配置
(1)在项目的gradle.properties中添加如下内容
MAVEN_SNAPSHOT_URL=http://192.168.1.123:8083/repository/cwj/
#nexus账号
NEXUS_USERNAME=admin
#账号密码
NEXUS_PASSWORD=admin123
#maven repository的url
MAVEN_URL=http://192.168.1.123:8083/repository/cwj/
#发布的版本号
NEXUS_VERSION=1.0.0
#库的名称
ARTIFACT_ID=ImageSelect
#组id
GROUP_ID=com.cwj.imageselect
#指定类型,一般为aar
TYPE=aar
#添加描述信息
DESCRIPTION=图片选择器
MAVEN_URL和MAVEN_SNAPSHOT_URL是你创建仓库的地址,http://localhost:8083/repository/cwj/,把localhost改为电脑的IP地址,可以通过cmd 输入ipconfig查询
(2)在项目的build.gradle配置Maven地址
(3)在选择需要放在私有仓库的库文件的build.gradle添加
uploadArchives {
configuration = configurations.archives
repositories {
mavenDeployer {
snapshotRepository(url: MAVEN_SNAPSHOT_URL) {
authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD)
}
repository(url: MAVEN_URL) {
authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD)
}
pom.project {
version NEXUS_VERSION
artifactId ARTIFACT_ID
groupId GROUP_ID
packaging TYPE
description DESCRIPTION
}
}
}
}
artifacts {
archives file('imageselect.aar')
}
记得在build.gradle添加
apply plugin: 'maven'
(4)上传库文件
(5)查看文件
(6)引用文件
compile 'com.cwj.imageselect:ImageSelect:1.0.0'