转载请注明出处:https://blog.csdn.net/binbinqq86/article/details/81033716
背景
当一个项目的业务线越来越多的时候,人员也会越来越多,多条业务线同时进行开发,项目也会越来越大,如果不进行统一的管理,势必会很乱,而且非本条业务线的人员不需要关心其他业务的代码,也不需要把所有代码都克隆到本地才能进行构建,不然的话就太麻烦了,而且当业务有交叉的时候,可能会随意修改别的业务的代码(当然这可以通过git的权限来解决,但始终是不好的方式)。这个时候就可以把非本条业务线的所有的模块全都做成JAR包或者AAR包,然后通过maven私服的方式,用gradle来进行构建,自动引入到本地来进行依赖和引用,当然自己的业务线也要这样做,来提供给别人去引用,如此一来,岂不美哉!
maven简介
maven是什么
Maven是一个项目管理和综合工具,基于项目对象模型(POM)的概念,可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。当然这是官方的解释,用我们自己的话来说,maven就是用来构建和管理项目的,就是一个项目的仓库,我们平时使用到的都是最基本的功能,比如自己开发了一个开源工具,秉着开源的精神,想要让全世界的人都可以去用,这个时候我们就可以上传到maven中心库,这个库是网络上的一个仓库,任何人都可以引用里面的资源,包含了非常多的开源项目。再比如我们公司内部写了一些通用组件或者工具,但是又只能内部使用,我们就可以搭建公司内部的maven服务器,把这些项目上传上去,这样整个公司所有项目都可以轻松的去引用,避免的重复编写拷贝造成的混乱和麻烦。
POM是什么
POM就是“Project Object Model”。翻译过来就是项目对象模型,里面存放的都是项目的一些基本描述信息,它是一个xml文件。maven也就是根据这个配置文件来进行项目的管理和构建的。先来看看里面到底是啥:
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.tb.plugin</groupId>