android 加载系统私有库,Android 搭建私有maven仓库及上传项目
前言
在日常工作及项目迭代过程中,一定有不少同学自己写了一些框架性的东西,或者一些好用的工具,总之就是能复用的代码。然而也有不少同学为了复用这些代码不得不复制粘贴到不同项目中,这样相同的功能出现了多份代码,在后期的维护过程中带来极度不便,更新一次SDK要口口传送多次且无法按版本迭代和降级。为了解决这一系列问题,我们不妨尝试将这些代码部署到maven仓库,一处编写多处使用。
Nexus 介绍
搭建私有Nexus仓库
下载 Nexus 安装包
下载 Nexus
解压 Nexus 文件
安装 Nexus
## 启动 Nexus 服务
nexus-3.15.2-01/bin/nexus start
控制台输出如下:
启动 Nexus 服务到此 Nexus 服务已经启动,访问 http://localhost:8081 即可访问 Nexus 私服,
初始账户:admin
初始密码:admin123
Nexus 服务器
Android Lib 发布私有仓库
项目配置
在项目根目录下 gradle.properties 中添加配置:
仓库地址如下:
仓库地址
# Maven仓库的URL
MAVEN_REPO_RELEASE_URL=http://localhost:8081/repository/maven-releases/
# 对应maven的GroupId的值
GROUP=maven-releases
# 登录nexus ossde的用户名
NEXUS_USERNAME=admin
#登录nexus oss的密码
NEXUS_PASSWORD=admin123
# groupid
GROUP_ID=cn.soulapp.android
# type
TYPE=aar
# description
DESCRIPTION=Soul Pay SDK By Android ~
在lib的build.gradle中添加:
// 添加maven依赖
apply plugin: 'maven'
...
// 配置上传指令
uploadArchives {
configuration = configurations.archives
repositories {
mavenDeployer {
repository(url: MAVEN_REPO_RELEASE_URL) {
authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD)
}
pom.project {
version '1.0.3'
artifactId 'AndroidPaySDK'
groupId GROUP_ID
packaging TYPE
description DESCRIPTION
}
}
}
}
上传 library
执行指令:
./gradlew uploadArchives
等待发布成功~
使用 library
在根目录 build.gradle 加入
buildscript {
repositories {
google()
jcenter()
// 配置私有仓库地址
maven {
url 'http://localhost:8081/repository/SoulApp/'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.1'
}
}
allprojects {
repositories {
google()
jcenter()
maven {
url 'http://localhost:8081/repository/SoulApp/'
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
在依赖此 library 项目中引用
api 'cn.soulapp.android:AndroidPaySDK:1.0.3@aar'
结语
至此,基于 Nexus 搭建私有 Maven 仓库已完成,祝您工作愉快~
android 加载系统私有库,Android 搭建私有maven仓库及上传项目相关推荐
- Jfrog 搭建本地maven仓库以及上传Android库
Jfrog 下载 安装包下载地址:Download Artifactory OSS | JFrog 如果是想下载之前的版本,可以点击上面的Get code source ,如果是最新版本,直接点下面的 ...
- android加载so文件失败,Android无法加载'.so.1'文件
我想你还没有通过JNI加载原生库到Java的概念. 首先在java中定义本地方法并在本机中执行相应的实现并编译它(您必须按照命名约定注册本地方法1)2)在jni_onload中注册本地方法...我认为 ...
- android 加载更多,如何在android中实现加载更多的recyclerview
我想在Recyclerview中实现更多的加载.这是代码. 代码来自 github. https://gist.github.com/ssinss/e06f12ef66c51252563e MainA ...
- android 加载更多动画效果,Android实践之带加载效果的下拉刷新上拉加载更多
前言 之前写的一个LoadingBar,这次把LoadingBar加到下拉刷新的头部.从头写一个下拉刷新,附赠上拉加载更多.下面话不多说了,来一起看看详细的介绍吧. 效果图: 实现过程 首先是自定义属 ...
- android加载大量图片内存优化,Android图片加载内存优化
利用BitmapFactory.Options实现图片内存优化 通过设置options.inPreferredConfig控制内存占用 首先准备了一张1280x800的blue_bg.png图片,我们 ...
- android 加载ttf流程分析,Android自定义字体 TextView 从SD卡加载TTF字体
Android自定义字体非常简单,能够从assets和SD卡两处加载标准的ttf字体.要实现自定义字体,只需借助工具类Typeface即可.文末有工程源码. 如果发生了Caused by: java. ...
- android 加载图片黑屏,Android 中启动页黑屏及白屏的解决方式
启动页黑屏或白屏的原因是,当Activity启动的时候不能马上加载layout. 而黑屏或者白屏是你的theme主题的默认样式,当layout没加载出来就显示黑屏或者白屏. 1.windowBackg ...
- android加载刷新进度条,android – 在Activity加载时显示进度条
我有一个ListActivity,它基于列表选择启动另一个Activity.第二个Activity需要从互联网上加载一些相当数据的数据,因此在用户点击一个项目和Activity显示之间有一个明显的延迟 ...
- android 加载大长图,android加载长图片的方法
1.很多应用都有加载一张长图片,用户可以上下拉动图片. 自己没有好的想法,那只好百度咯.结果都说用webview来实现,好吧那就只好先试一下了. 2.自己写了简单的html,然后webview加载.图 ...
最新文章
- 12306 背后的技术大牛:我不跟人拼智商,我就跟他们拼狠!
- 端口聚合与Trunk综合配置
- 安卓 buttontext怎么居中_三星发布会汇总,同样是Note 20,差距怎么就那么大呢?...
- java 操作日志设计_日志系统新贵 Loki,确实比笨重的ELK轻
- MFC设置对话框背景色及控件颜色
- ffmpeg windows环境下配置(VS2010)
- mysql数据库 set类型_MYSQL数据库数据类型
- router-LInk传参与接受参数(记录)
- delphi 7 mdi子窗体。。。无法更改以命令对象为源的记录集对象的 ActiveConnection 属性。...
- [转载]窗口之间的主从关系与Z-Order
- Android浏览器速度测试,四大Android手机浏览器 上网速度实测比较
- python爬取五百丁ppt模板(有图+有代码)
- 每日一题 导数的应用
- 信号完整性与电源完整性的详细分析
- 【GEO数据库】数据
- 7kbscan御剑版下载及使用
- 车内看车头正不正技巧_最常见的3种车位倒库技巧,以后停车都不是事,建议收藏!...
- 内存管理之Tagged pointer
- fama matlab源码_Fama French (1996)3因子模型 论文数据及matlab程序
- 完整企业官网源码,前端基于Vue+ElementUI,后台基于基于core3 webapi,含数据库文件,含详情安装部署文档
热门文章
- 使用Python将数据插入数据库(一)
- 计算机病毒实践汇总六:IDA Pro基础
- LeetCode 285. Inorder Successor in BST
- 各j2ee web层框架比较(转)
- Mysql访问中间件--Atlas初探
- Redhat 7搭建iscsi存储系统
- 使用脚本快速查看Linux系统信息
- 对于 Shift-JIS 编码的理解 (win10中 查看 Shift-JIS 编码 コード)
- 学了java然后深入_JAVA8学习——从源码角度深入Stream流(学习过程)
- 【Oracle】DG三种保护模式及切换方式