欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

android 搭建本地maven库

程序员文章站 2022-03-27 21:46:03
android 搭建本地maven库先学习本地maven库搭建,在学习远端maven搭建。情景在大型的项目中,多人开发环境下,安全为第一条件下必然会产生以下几个问题:项目越来越大,导致项目依赖越来越多,配置项剧增,最后就是编译时间非常漫长。项目依赖的第三方库,自己拆分的库很多,不利于管理和维护。开发人员太多,项目一大坨,不利于责任的划分和管理。代码无版本控制,规范很重要。代码全部在本地,很容易产生代码泄露,很不安全。(本地maven也是如此)所以大家熟知的组件化方案就产生了,各种开源方...

android 搭建本地maven库

先学习本地maven库搭建,在学习远端maven搭建。

情景

在大型的项目中,多人开发环境下,安全为第一条件下必然会产生以下几个问题:

  • 项目越来越大,导致项目依赖越来越多,配置项剧增,最后就是编译时间非常漫长。
  • 项目依赖的第三方库,自己拆分的库很多,不利于管理和维护。
  • 开发人员太多,项目一大坨,不利于责任的划分和管理。
  • 代码无版本控制,规范很重要。
  • 代码全部在本地,很容易产生代码泄露,很不安全。(本地maven也是如此)

所以大家熟知的组件化方案就产生了,各种开源方案都有,最终的目的就是实现组件化。但是,组件化方案并不能将代码保护起来,也不能通过版本控制和依赖控制代码。所以maven能帮我们实现这几点。

实现

其实本地的实现很简单,解决studio已经帮我们干了一大半事情了,我们只需要添加一些配置就行了。

  1. Project项目下创建upload.gradle文件,如下:
    android 搭建本地maven库
//引入maven
apply plugin: 'maven'

uploadArchives{//生成仓库的任务
    repositories.mavenDeployer{
        // 配置本地仓库路径,项目根目录下的repository目录中
        repository(url: uri('../repository'))
        pom.groupId = "com.hujin.wan.login"// 唯一标识(通常为模块包名,也可以任意)
        pom.artifactId = "login" // 项目名称(通常为类库模块名称,也可以任意)
        pom.version = "1.0.2" // 版本号
    }
}
  1. 在项目的build.gradle下申明本地Macen仓库地址:
    android 搭建本地maven库
allprojects {
    repositories {
        google()
        jcenter()
        //申明本地Macen仓库地址
        maven {
            url 'file:/Users/apppp/AndroidStudioProjects/wan/repository'
        }
    }
}
  1. 根据1中repositoryurl路径所指定的目录,创建repository目录,这是maven生成的地址

android 搭建本地maven库

  1. 在需要打包的module的目录下的build.gradle引入upload.gradle文件
apply plugin: 'com.android.library'
apply from: rootProject.file('upload.gradle')
.......
  1. 在右边侧边栏–》Gradle下找到uploadArchivestask,并执行:
    android 搭建本地maven库
    然后会在repository目录下生成如下文件:
    android 搭建本地maven库

  2. 然后在主module里面正常依赖使用就行:

 implementation 'com.hujin.wan.login:login:1.0.2'

主module代码就可以使用loginmodule下的代码了
android 搭建本地maven库

结语

本地maven还是很简单的,后面会说下实现nexus3.+配置的远端仓库。(nexus3.+才开始看)

本文地址:https://blog.csdn.net/HUandroid/article/details/108586271