gradle配置 uploadArchives上传文件到私服仓库

简要

很多时候,Android Studio中所创建的工程,会依赖一个或多个Module。Module 生成的AAR库,可以上传到maven或者私服Nexus作为公用的SDK。

Gradle子工程之间通过 compile/implementation project(“:XXX”)这种方式依赖是非常便利的,但是这样的时候,如果用uploadArchives上传AAR到Maven,就可以通过api引用,很是方便。

配置及编译

配置分播放器部分配置和App引用配置

ijkplayer配置及编译

以armv7a为例

build.gradle

apply from: new File(rootProject.projectDir, "tools/gradle-on-demand.gradle");
  1. gradle.startParameter.taskNames.each { task ->
  2. def taskName = task.split(“:”).last()
  3. switch (taskName) {
  4. case “uploadArchives”:
  5. // apply from: new File(rootProject.projectDir, ‘tools/gradle-mvn-push.gradle’)
  6. apply from: new File(rootProject.projectDir, ‘tools/gradle-private-upload.gradle’)
  7. break;
  8. case “bintrayUpload”:
  9. apply from: new File(rootProject.projectDir, ‘tools/gradle-bintray-upload.gradle’)
  10. break;
  11. default:
  12. // do nothing
  13. break;
  14. }
  15. }

 

其中uploadArchives指令会执行gradle-private-upload.gradle

  1. def getReleaseRepositoryUrl() {
  2. return hasProperty(‘PRIVATE_REPO_RELEASE’) ? PRIVATE_REPO_RELEASE
  3. : “http://120.24.92.79:9982/repository/internal”
  4. }
  5. def getSnapshotRepositoryUrl() {
  6. return hasProperty(‘PRIVATE_REPO_SNAPSHOT’) ? PRIVATE_REPO_SNAPSHOT
  7. : “http://120.24.92.79:9982/repository/snapshots”
  8. }
  9. def getRepositoryUsername() {
  10. return hasProperty(‘PRIVATE_REPO_DEPLOY_USERNAME’) ? PRIVATE_REPO_DEPLOY_USERNAME : “”
  11. }
  12. def getRepositoryPassword() {
  13. return hasProperty(‘PRIVATE_REPO_DEPLOY_PASSWORD’) ? PRIVATE_REPO_DEPLOY_PASSWORD : “”
  14. }
  15. afterEvaluate { project ->
  16. uploadArchives {
  17. repositories {
  18. mavenDeployer {
  19. beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
  20. pom.groupId = GROUP
  21. pom.artifactId = POM_ARTIFACT_ID
  22. pom.version = VERSION_NAME

 

这里定义类仓库地址及用户名和密码,同时还引用了GROUP和版本号等

仓库地址、用户名、密码和GROUP等都是在gradle.properties中定义

  1. VERSION_NAME=1.0.1
  2. VERSION_CODE=100001
  3. GROUP=tv.rapid.media
  4. PRIVATE_REPO_RELEASE=http://120.24.92.79:9982/repository/internal
  5. PRIVATE_REPO_SNAPSHOT=http://120.24.92.79:9982/repository/snapshots
  6. PRIVATE_REPO_DEPLOY_USERNAME=RepoReadWrite
  7. PRIVATE_REPO_DEPLOY_PASSWORD=iQmDauxISZU1M7j8Lbvy

 

配置好后,就可以执行gradle uploadArchives进行上传私服仓库

路径:

ijkplayer/android

指令:

gradle uploadArchives

gradle配置 uploadArchives上传文件到私服仓库-资灵

上传好后,可以在私服仓库里看到这些文件

App引用配置

app引用私服仓库的文件,这个步骤很简单,只需修改两个地方

build.gradle

gradle配置 uploadArchives上传文件到私服仓库-资灵

1、添加路径和账户和密码

  1. maven {
  2. url ‘http://120.24.92.79:9982/repository/internal’
  3. credentials {
  4. username ‘RepoReadOnly’
  5. password ‘BLa80AF3xnwlCze9qrvm’
  6. }
  7. }

 

2、引用

  1. // ijkplayer
  2. implementation ‘tv.rapid.media:ijkplayer-java:1.0.1’
  3. implementation ‘tv.rapid.media:ijkplayer-armv5:1.0.1’
  4. implementation ‘tv.rapid.media:ijkplayer-armv7a:1.0.1’

 

 

温馨提示: 本文最后更新于2022-05-03 11:19:49,本站资源部分来自网络,由老师收集整理,如有侵犯你的权益请联系管理员E-mail:1679716715@qq.com 我们会第一时间进行审核删除。站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请在下载24小时内删除!,请在下方 留言或联系 资灵
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容

投稿


点击在线投稿
投稿邮箱:1679716715@qq.com
交流 QQ:1679716715