当前位置:   article > 正文

使用gitlab搭建maven仓库

gitlab搭建maven仓库

解决的痛点
  • 开发过程中,随着项目的发展,经常会有一些基础库需要打成aar或者jar的形式,分发到各个业务线去使用,往往每一次变更都需要各业务线手动替换aar或者jar包,成本很高。
  • 使用公司已有的gitlab搭建maven仓库,将相应的aar和jar包托管到maven仓库,各个业务线只需要通过implementation 引用方式即可使用,无需替换aar和jar包
  • 基础库发生变更后,只需要通过各个业务线修改依赖版本即可
基础准备
  • Android Studio
    • 本次使用的是Android Studio Bumblebee 版本
    • Gradle 版本是gradle-7.2
  • Gitlab仓库/Gitee仓库
1、创建插件
  • 使用Android Studio 新建Android项目并创建module

    创建的module名字可以根据用途自定义,本次使用logplugin命名

  • 删除module中无用文件夹,红框中的全部删除
    在这里插入图片描述

  • 在logplugin中的build.gradle中配置maven打包上传脚本

plugins {
    id 'java-library'
    id 'maven-publish'  // maven插件
}

// 配置maven打包参数
publishing {
    publications {
        maven(MavenPublication) {
            groupId = 'com.peter.example' // 包名
            artifactId = 'log-plugin   // 插件名
            version = '1.0.0             // 版本
             artifact "libs/mylibrary-release.aar"     // 将本地文件夹中aar包一起上传到仓库

            from components.java   // 生成jar包
        }
    }

    repositories {
        maven {
            // 配置本地部署文件夹,可根据不同系统自定义
            def mavenDirPath = file('D:\\maven')
            url = "file://${mavenDirPath.absolutePath}"
        }
    }

}

java {
    sourceCompatibility = JavaVersion.VERSION_1_8
    targetCompatibility = JavaVersion.VERSION_1_8
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
2、部署到本地
  • 配置完打包脚本后,点击同步,就会在studio中出现tasks列表,点击publish就将插件部署到了本地
    在这里插入图片描述
  • 查看本地目录我们发现已经生成了log-plugin文件夹
    在这里插入图片描述
  • log-plugin包结构如下
    在这里插入图片描述
3、将代码提交到gitlab仓库
  • 在gitlab中创建新项目
  • 将本地maven仓库代码提交到远程仓库
cd existing_folder
git init
git remote add origin git仓库地址
git add .
git commit -m "Initial commit"
git push -u origin master
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
4、引用仓库代码
  • 在项目settings.gradle中配置maven依赖
    在这里插入图片描述
    • maven 中ur路径规则
    > https://域名地址/Group名称/项目名/raw/分支
    > 如果该项目是你自己的。而不是组里面的。那么Group名称就得换成你的用户名了
    
    • 1
    • 2
  • 在app工程build.gradle中添加implementation依赖
implementation 'com.peter.example:log-plugin:1.0.0'
  • 1
  • 依赖规则
    包名:插件名:版本号
5、集成使用测试
  • 同步项目
  • 查看External Libraries
    在这里插入图片描述
    如果依赖库加载成功,则在External Libraries中可见
  • 依赖使用
    在这里插入图片描述
参考文章:

https://blog.csdn.net/wenwen091100304/article/details/89792240
https://zhuanlan.zhihu.com/p/145941547

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号