Maven项目依赖管理工具

学习教程: https://www.yiibai.com/maven/

Maven不仅可以管理jar包,还可以管理我们项目中对其他子模块的引用;

mvn claen 在“target”文件夹中的一切都将被删除。删除以前编译得到的class字节码文件。

mvn compile 编译,将Java源程序编译成class字节码文件。

mvn test 测试,并生成测试报告。

mvn package 打包,动态Web工程打包war包,Java工程打jar包。

mvn install 将项目生成的jar包放入maven仓库中,以便别的模块调用。

mvn clean compile -U   清楚target下的文件,并将生成的jar包放入仓库中去。

理解maven命令可以帮助我们解决很多项目中的问题。
 
举个例子:SpringCloud项目,包含多个微服务,其中公共模块被同时修改了上传到Gitlabel,你更新到本地,订单服务要引用公共模块,订单模块启动时报公共模块bean创建失败问题,为什么呢?公共模块服务可以正常启动,怎么会报错呢?因为maven仓库中的jar包不是最新的,也就是说订单服务引用的jar还是原来的,需要执行mvn clean compile -U,再重新启动服务就可以解决这种问题。
 
还有pom.xml文件的问题:启动微服务时,会报openfegin创建bean失败异常。为什么呢?我的pom文件并没有引用fegin组件,怎么回报这种错呢?可能是pom文件引用了父pom文件,在父pom文件中存在对fegin组件的引用。所以启动时才会报这种奇怪的异常。
 
学习pom文件也很重要。
posted @ 2019-08-22 16:56  尘世间迷茫的小书童  阅读(534)  评论(0编辑  收藏  举报