当前位置: 移动技术网 > IT编程>开发语言>Java > android 搭建本地maven库

android 搭建本地maven库

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

android 搭建本地maven库

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

情景

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

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

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

实现

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

  1. Project项目下创建upload.gradle文件,如下:
    在这里插入图片描述
//引入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仓库地址:
    在这里插入图片描述
allprojects {
    repositories {
        google()
        jcenter()
        //申明本地Macen仓库地址
        maven {
            url 'file:/Users/apppp/AndroidStudioProjects/wan/repository'
        }
    }
}
  1. 根据1中repositoryurl路径所指定的目录,创建repository目录,这是maven生成的地址

在这里插入图片描述

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

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

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

主module代码就可以使用loginmodule下的代码了
在这里插入图片描述

结语

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

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

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网