今天因为各种乱七八糟的原因,在已经安装好一个maven的情况下又安装了另外一个,并且配置了一系列的环境变量和setting。
结果运行的时候基本上是一团糟,仔细研究之后发现有几个问题,这里记录一下:
1.环境变量配置了双份,两个Maven_Home,导致最终的path中也有2个maven_home的路径,但是这样不代表配置了2个路径,因为环境变量中path只会认识第一个maven,再来一个maven就不认识了,所以第二个%maven_home%/bin的路径其实是完全没有鸟用的。
2.删除掉我不需要的maven_home之后,编译本地代码,结果它还是在老的私服库地址里面下载依赖,这样肯定依赖就不全,而且也不能构建了。
研究之后发现,只要你在C盘 用户目录中还存在./m2目录,maven默认就会去读这里的setting.xml,由于我之前只是删除了maven_home没有删除用户目录下的.m2路径,所以编译的时候还在用这个setting,这个时候只需要把原来的setting文件删除掉,或者把正确的那一份setting文件复制过来覆盖掉旧的,就没有问题了。
最后有个奇怪的问题,不知道为什么。 更新依赖的时候,好多jar包都下载成了XXXX.jar.LastUpdated 这种格式,导致编译的时候不认识这个jar包。我的解决方法是依赖包中把对应出了问题的jar包删掉,不知道哪位大神知道根因??