Android打包上传AAR文件到Maven仓库的示例
1、创建 Android 库
按以下步骤在项目中创建新的库模块:
- 依次点击 File > New > New Module。
- 在随即显示的 Create New Module 窗口中,依次点击 Android Library 和 Next。
- 为您的库命名,并为库中的代码选择一个最低 SDK 版本,然后点击 Finish。
2、上传aar包至Maven私服
打开新模块 build.gradle 文件,按如下说明修改:
plugins {
id 'com.android.library' // 库模块
id 'kotlin-android'
id 'maven' // 引入maven plugin
}
def snapshotVersionCode = 101
def snapshotVersion = "1.0.1"
/* 此处省略 android{} 相关配置 */
dependencies {
// 友盟基础组件库(所有友盟业务SDK都依赖基础组件库)
implementation "com.umeng.umsdk:common:9.3.6"
implementation "com.umeng.umsdk:asms:1.2.0"
implementation "com.umeng.umsdk:apm:1.1.1"
}
/*快照版 maven上传*/
uploadArchives {
configuration = configurations.archives
repositories {
mavenDeployer {
repository(url: 'http://nexus.xxxxx.com/repository/maven-snapshots') {
authentication(userName: 'userNameXXXX', password: 'passwordXXXXX')
}
pom.project {
version snapshotVersion + '-SNAPSHOT'
artifactId 'lib-umeng'
groupId 'com.xxxxx'
packaging 'aar'
description 'lib-umeng Initial submission'
}
}
}
}
上传aar 到maven
选择右侧Gradle > Module Name > upload ,双击uploadArchives运行

3、其他项目使用
Project build.gradle添加 maven
allprojects {
repositories {
/* 此处省略了其他配置 */
maven { url 'https://dl.bintray.com/umsdk/release' } // umeng.umsdk相关maven
maven { url 'https://nexus.xxxxx.com/repository/maven-snapshots' } // 刚刚aar上传的maven
}
}
Module 中引用,build.gradle添加如下引用
dependencies {
api ('com.xxxxx:lib-umeng:1.0.1-SNAPSHOT@aar') { // 刚刚生成的aar
implementation "com.umeng.umsdk:common:9.3.6" // 注意,aar implementation的依赖需要重新引用
implementation "com.umeng.umsdk:asms:1.2.0"
implementation "com.umeng.umsdk:apm:1.1.1"
}
}
4、QA
maven上传报错:
Execution failed for task ':lib-umeng:uploadArchives'. \> Could not publish configuration 'archives' \> Failed to deploy artifacts: Could not transfer artifact com.xxxxx:lib-umeng:aar:1.0.1 from/to remote (http://nexus.xxxxx.asia/repository/maven-snapshots): Failed to transfer file: http://nexus.xxxxx.asia/repository/maven-snapshots/com/xxxxx/lib-umeng/1.0.1/lib-umeng-1.0.1.aar. Return code is: 400, ReasonPhrase: Repository version policy: SNAPSHOT does not allow version: 1.0.1.
解决:version snapshotVersion + '-SNAPSHOT' 标记:-SNAPSHOT
参考:developer.android.com/studio/proj…
以上就是Android打包上传AAR文件到Maven仓库的示例的详细内容,更多关于Android打包上传文件到Maven仓库的资料请关注脚本之家其它相关文章!
- Android将项目导出为Library并在项目中使用教程
- Android Studio多工程引用同一个library项目配置的解决方法
- android studio library 模块中正确引用aar的实例讲解
- Android Data Binding 在 library module 中遇到错误及解决办法
- Android Support Library 标题栏(Toolbar)滚动效果实现方法
- Android 详解Studio引用Library与导入jar
- android底部弹出iOS7风格对话选项框(QQ对话框)--第三方开源之IOS_Dialog_Library
- 解析ADT-20问题 android support library
- Android 使用maven publish插件发布产物(aar)流程实践
- 发布 Android library 到 Maven 解析
相关文章
Android Jetpack系列之App Startup使用详解
这篇文章主要为大家介绍了Android Jetpack系列之App Startup使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-10-10
Android使用MediaRecorder类实现视频和音频录制功能
Android提供了MediaRecorder这一个类来实现视频和音频的录制功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧2018-07-07
解决Android Studio 格式化快捷键和QQ 锁键盘快捷键冲突问题
每次打开qq使用android studio格式化的快捷键Ctrl + Alt +L时,总是出现qq锁键盘提示,怎么回事呢?下面小编给大家带来了android studio格式化的快捷键和qq快捷键之间的冲突的处理方法,需要的朋友参考下吧2017-12-12
详解Android中visibility属性VISIBLE、INVISIBLE、GONE的区别
在Android开发中,大部分控件都有visibility这个属性,其属性有3个分别为“visible ”、“invisible”、“gone”。主要用来设置控制控件的显示和隐藏。本文就详细的讲解一下。2016-12-12


最新评论