早在某公司实习的时候就听闻过Maven,只是听大神简单的介绍过,自己没有实习做过。之前做Android 的时候主要是用gradle(不过真心不熟),大概有点知道Maven的作用,这次来深圳某公司实习,老板叫用Maven 编译C++,虽然事实证明老板的想法有点错误,不过也基于这个,还是稍微正规的学了一发Maven(当然是自学了,除了C++其他都是自学的)。
Maven简介
Maven其实主要就是解决项目编译和项目依赖的问题,在大型项目中很有优势。
例如你的一个项目中有几十外部依赖包,和你自己写的一些包,如果是不用Maven这种东西的话,你得一个一个包的下载,这样比较效率低下,而且一旦你用的包有更新,你又要重新去下载,可能在小项目中这倒没什么,但是在正规的大项目中,外部包的更新换代对项目还是有很大的影响,如果一个外部包有漏洞,可能给黑客攻击的机会,这个时候就必须得更新包。
所以Maven就应运而生,在Maven中只要在一个pom文件中,做一些配置,就可以自动下载所需要的依赖包到本地仓库,然后多个项目可以共享本地仓库的依赖包。如果依赖包需要更新的时候,只需要改一下版本号,就可以了。而且Maven的pom是每个项目(模块)都会有,这些pom中可以有继承的关系,所以有一些依赖包只要在一个p