Android组件管理新模式 --组件上传到自己的maven私有仓库

1,982 阅读2分钟

abkit(Android Build Kit)是一个Android组件化组件管理工具集,它是一个gradle插件,内部包含一些组件管理工具。使用示例请参考项目servicepool

  1. Android版本管理
  2. Module打包成aar/jar上传到maven仓库
  3. 组件配置管理(重点功能)
  4. 其他零碎功能

abkit接入方法请查看项目readme

本文介绍的是abkit的功能 —— 组件上传到maven私有仓库

模块化/组件化开发过程中,可能需要将Module打成aar并生成doc文档然后上传到公司/三方的/自己的Maven仓库。abkit集成了maven上传功能。 只需要简单的几步就可以配置好jar/aar上传功能。

第一步,在根目录下的gradle.properties、maven.properties或local.properties下增加如下几个属性,属性可以分散放到不同的properties文件 毕竟用户名/密码只适合放到local.properties

#组件打包上传时,默认会自动增加snapshot后缀,如果想打正式包,设置publishRelease为true
publishRelease=true

#普通用户的Nexus Maven仓库的用户名
nexusUserName=user
#普通用户的Nexus Maven仓库的密码
nexusPassword=user.password
#snapshot上传地址, 下面的值是插件内置的默认地址,需换成你自己的上传地址
nexusSnapshotUrl=http://47.99.188.223:8081//repository/maven-snapshots/

#是否需要管理账号才能上传正式包,可以按自己需求在Nexus自行配置,这里只提供方案,不强制。
#所以如果nexusSnapshotUrl填正式的上传地址也是可以的。


#管理账号,需要换成你自己的用户名 
adminUserName=admin
#管理密码,需要换成你自己的密码
adminPassword=admin.password 
#正式包的上传地址, 下面的值是插件内置的默认地址,需换成你自己的上传地址
nexusUrl=http://47.99.188.223:8081/repository/maven-releases/

第二步, 在需要上传的Module的build.gradle中,添加以下配置

abkit {
    maven {
        artifactId 'servicepool'    // 组件artifactId
        groupId 'chao.java.tools'   // 组件groupId
        versionName '1.0.0'         // jar/aar版本
        //这三个参数组合在一起就是 'chao.java.tools:servicepool:1.0.0'
        //这里需要注意的是,如果没有设置publishRelease为true, 实际会生成'chao.java.tools:servicepool:1.0.0.snapshot'
    }
}