Maven使用经验小结

经验总结

  1. Maven的项目结构说明,这篇文章是我见过讲得最清楚的:maven资源文件的相关配置

  2. 使用Maven进行Java开发时,最令开发者头疼的当数Jar包冲突,由此可能会引发“class not found ,method not found”等错误。要想彻底解决这个问题,让开发者不再犯怵,可以从道理和工具两个方面下手:

    • 原理:在Maven权威指南中指出,当遇到相同group、artifactId,不同version的冲突时,有两条原则:(1)该Jar包在依赖树上的路径短的优先;(2)在2.0.9以后,如果路径相同,则在pom文件中先声明的Jar包优先;
    • 工具:eclipse自带的依赖分析很棒、IDEA的Maven Helper插件也很好使用
    • Maven命令:mvn dependency:tree -Dverbose -Dincludes=groupId:artifactId
  3. 严重推荐使用dependencyManagement来管理依赖,即在主pom里管理version和要使用的jar包,在各个需要的模块中的pom里只引入自己需要的。

参考资料

  1. 《Maven权威指南》
  2. 《Maven官方文档》-Maven依赖机制简介