android studio 构建maven私有库环境搭建
来源:互联网 发布:局域网视频监控软件 编辑:程序博客网 时间:2024/05/18 01:07
1、maven运行需要jdk1.8版本的,首先安装jdk1.8
下载链接:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
jdk1.8 和 1.7 可以共存的,执行mvn 时需要jdk1.8,因此需要切换版本
/usr/libexec/java_home -v 1.8 //jdk版本切换
建议在~/.bash_profile添加如下代码
#jdk切换export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)#setjdk 1.8 切换到jdk8 1.7 setjdk() { export JAVA_HOME=$(/usr/libexec/java_home -v $1)}
source ~/.bash_profile
setjdk 1.8 //切换jdk版本,不影响其他软件使用jdk1.7
2、Nexus 是一个maven管理界面
下载链接 https://www.sonatype.com/download-oss-sonatype
解压:tar -zxvf nexus-3.1.0-04-mac.tgz
环境配置:
export PATH=/Users/apple/Documents/nexus-3.1.0-04/bin:$PATH
Usage: ./bin/nexus {start|stop|run|run-redirect|status|restart|force-reload}
source ~/.bash_profile
修改配置文件 安装目录下有 etc/nexus-default.properties文件,
# Jetty sectionapplication-port=9999 //端口修改 其余的不用动application-host=0.0.0.0 nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xmlnexus-context-path=/# Nexus sectionnexus-edition=nexus-pro-editionnexus-features=\ nexus-pro-feature
执行 nexus start
结果nexus is running
说明nexus 安装成功
浏览器访问地址 http://127.0.0.1:9999/nexus
默认用户:admin 密码:admin123
点击create repository
3、maven下载安装(以下内容都是在mac平台上的环境配置,其余平台自行google或度娘)
下载链接:http://maven.apache.org/download.cgi
安装:
解压安装包:tar -zxvf apache-maven-3.3.9-bin.tar.gz
解压到 ~/Documents目录下面(自选路径)
配置环境路径,vi ~/.bash_profile 或 /etc/profile 添加bin路径
export PATH=/Users/apple/Documents/apache-maven-3.3.9/bin:$PATH
如果添加在~/.bash_profile 里面 每次都要执行source ~/.bash_profile,建议放在/etc/profile
测试,环境变量是否成功:
source ~/.bash_profilesetjdk 1.8mvn -version
运行结果如下:
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)Maven home: /Users/apple/Documents/apache-maven-3.3.9Java version: 1.8.0_112, vendor: Oracle CorporationJava home: /Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home/jreDefault locale: zh_CN, platform encoding: UTF-8OS name: "mac os x", version: "10.10.5", arch: "x86_64", family: "mac"
配置maven 在解压目录中有conf/settings.xml
私有库存在的位置 android studio 里面引用的是file:////Users/apple/projects/maven<localRepository>/Users/apple/projects/maven</localRepository> nexus 服务器<server> <id>my-nexus-releases</id> <username>admin</username> <password>admin123</password> </server> <server> <id>my-nexus-snapshot</id> <username>admin</username> <password>admin123</password> </server> //镜像 maven 库的路径 <mirror> <id>nexus</id> <url>http://127.0.0.1:9999/repository/cody/</url> <mirrorOf>*</mirrorOf> </mirror> //nexus 配置<profile> <id>nexusProfile</id> <repositories> <repository> <id>nexus</id> <name>Nexus Repository</name> <url>http://127.0.0.1:9999/repository/cody/</url> <layout>default</layout> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> </profile> //激活<activeProfiles> <activeProfile>nexusProfile</activeProfile> </activeProfiles>
上面都ok了,开始构建项目工程
android 创建一个空工程,然后建一个module, 随意选,推荐使用lib module
在该module的gradle.properties 添加如下信息
#用户信息USER_NAME= adminPASSWORD= admin123#包信息ARTIFACTID = datetimepicker LIBRARY_VERSION = 1.0.5GROUP_ID= cn.jesse.androidLIB_TYPE= aarLIB_DESCRIPTION= dependences lib#Mac下地址:file:///Users/<username>/my/local/repo #LOCAL_REPO_URL=file:///Users/apple/projects/maven #本地的地址LOCAL_REPO_URL= http://127.0.0.1:9999/repository/cody/ #服务器地址
在build.gradle文件最下面添加如下
apply plugin: 'maven'uploadArchives { repositories { mavenDeployer { repository(url: LOCAL_REPO_URL) { authentication(userName: USER_NAME, password: PASSWORD) } pom.project { version LIBRARY_VERSION artifactId ARTIFACTID groupId GROUP_ID packaging LIB_TYPE description LIB_DESCRIPTION } } }}
version 版本
artifactId 库名
groupId 组名
上面上个比较重要,在android studio 应用时需要这个三个值
应用形式compile groupId:artifactId:version
命令行执行 gradle uploadArchives
如果没安装gradle的请自行安装。
到此服务器上就能看到上传的库了
项目引用
在项目build.gradle 添加
allprojects { repositories { jcenter() mavenLocal() maven { //url 'file:///Users/apple/projects/maven/' //本地 url 'http://127.0.0.1:9999/repository/cody/' //服务器 } }}
在app build.gradle 添加
compile 'cn.jesse.android:datetimepicker:1.0.2'
到此私有库环境搭建成功
本地地址可以 /Users/apple/projects/maven/ 找到库,用服务器可以在
- android studio 构建maven私有库环境搭建
- 基于maven、nexus、jenkins搭建构建链以及私有库
- Android Studio发布项目到Maven私有库(Nexus)
- Linux搭建Maven私有库
- nexus maven私有库搭建
- 拥抱 Android Studio 之四:Maven 仓库使用与私有仓库搭建
- 拥抱 Android Studio 之四:Maven 仓库使用与私有仓库搭建
- 拥抱 Android Studio 之四:Maven 仓库使用与私有仓库搭建
- 拥抱 Android Studio 之四:Maven 仓库使用与私有仓库搭建
- 【android studio】环境搭建
- Android Studio环境搭建
- Android studio 环境搭建
- Android Studio环境搭建
- Android Studio 环境搭建
- Android studio环境搭建
- android studio环境搭建
- Android Studio 环境搭建
- Android Studio环境搭建
- CMD命令详解——磁盘类命令
- php error_log() 将错误信息写入一个文件【实例及常见问题】
- Java之package和import语句
- Swift的Optional
- lua中的Coroutine
- android studio 构建maven私有库环境搭建
- 输出文件流以ate模式打开文件为什么会清空文件内容?
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
- Makefile关键字
- C/C++基础整理(2)
- 内存泄漏(memory leak)和内存溢出(out of memory)
- 使用swagger作为restful api的doc文档生成
- 自用Android资源访问
- JAVA设计模式(多例模式)