Maven实战-多项目间的依赖

      根据Maven的相关资料,我们可以很清楚的了解到,仓库只分为两类:本地仓库和远程仓库。当maven根据坐标寻找构件的时候,它首先会查看本地仓库,如果本地仓库存在此构件,则直接使用;如果本地仓库不存在此构件,或者需要查看是否有更新的构件版本,maven就会去远程仓库查找,发现需要的构件之后,下载到本地仓库再使用。如果本地仓库和远程仓库都没有需要的构件,maven就会报错。

     根据以上原则,如果两个项目间有依赖关系,例如项目A依赖于项目B,可以先利用Maven的install命令将项目B打包安装到本地仓库,此时A对于B的依赖已经存在于本地仓库,直接在项目A中增加对B的module层的依赖配置,然后利用Mven将项目A打包,此时可以成功将B的dependency依赖打包到A中。


      但是在这个过程中遇到过一个问题,我和另外一个同事都利用以上方法对A进行install,他的成功了,但是我却一直报错,最后一比较发现,是Maven版本不同(maven3不行而maven2却可以),原因在于B中设置类一个全局变量配置,打包之后,无法进行替换,导致依赖无法被引入。于是修改了变量配置,将版本号进行了硬编码,再次尝试,maven3打包成功。

猜你喜欢

转载自cwfmaker.iteye.com/blog/1659938