maven项目在做build或者其他操作的时候,会去找相应的配置文件。首先不用说,要找的就是项目自身的pom.xml文件,不管怎么弄,pom文件的配置都是优先读取的。
接下来才是去读settings.xml文件。现在的问题是settings文件会有两份。一份是在maven的安装目录下,另一份是在用户目录的.m2目录下。这两个配置文件该怎么弄呢。比如我在两边的settings文件里面都配置了proxy,但是两个的代码不一样,那么这个时候,maven到底该用哪个代理呢。
http://maven.apache.org/settings.html
官方文档是这么说的,maven安装目录下的sttings文件也被称为是global settings,也就是全局的settings文件,而用户目录下的文件则是用户自身配置的文件。如果两个目录下都存在settings的话,那么他们的内容是可以合并到一起的。但是如果有冲突的话,那就应该是以用户目录的settings文件为主。
这个小编亲测,的确是这样的。
所以结论是 maven 配置读取顺序是:
pom.xml-->用户目录下的settings.xml(if existing)-->maven 安装目录下的settings文件。
--------EOF--------
网友评论