面试官:为何要使用Maven,Maven聚合工程的优势在哪里?

  |   0 评论   |   100 浏览

为何要使用Maven?

卓越的依赖管理

包括自动更新,依赖关闭(也称为传递依赖)

个人理解maven主要是用来解决导入java类依赖的jar,编译java项目主要问题(最早手动导入jar,使用Ant之类的编译java项目)。比如之前项目导入jar,是通过copy方式导入项目中,而且还会存在jar之间的依赖和冲突;而maven解决了这些问题,只是网速不好的时候有点麻烦。

pom.xml文件中dependency属性管理依赖的jar包,而jar包包含class文件和一些必要的资源文件。

当然它可以构建项目,管理依赖,生成一些简单的单元测试报告,像现在公司的持续集成都广泛的使用maven。

能够轻松地同时处理多个项目

基于模型的构建:Maven能够根据项目的元数据将任意数量的项目构建到预定义的输出类型(如JAR,WAR或分发)中,而无需在大多数情况下执行任何脚本。

Maven是基于项目对象模型,可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。Maven能够很方便的帮你管理项目报告,生成站点,管理jar文件,等等。例如:项目开发中第三方jar引用的问题,开发过程中合作成员引用的jar版本可能不同,还有可能重复引用相同jar的不同版本,使用maven关联jar就可以配置引用jar的版本,避免冲突。

相同的项目结构

使用Maven管理的Java 项目都有着相同的项目结构:

  • 有一个 pom.xml 用于维护当前项目都用了那些jar包
  • 项目的主干java代码都放在 src/main/java
  • 项目配置文件都放在 src/main/resources
  • 测试代码都放在 src/test/java

Maven聚合工程的优势在哪里?

  • 方便管理
  • 开发过程更加快速
  • 纵向切分,使项目结构更加清楚:将一个项目的多个功能模块分开;
    然后再对每个模块进行横向切分:就是我们平常说的三层架构,将项目分成了web层(也被叫做表现层),service层(也被叫做业务层)、dao层(也被叫做持久层),可以理解为将一个功能模块的不同调用过程进行了水平方向的拆分。
  • 项目整合:横向拆分后,每个功能模块进行了单独的开发之,项目整合的时候只需要有一个能够整合这些项目或者模块的工程即可


标题:面试官:为何要使用Maven,Maven聚合工程的优势在哪里?
作者:mmzsblog
地址:https://www.mmzsblog.cn/articles/2019/09/03/1567489038420.html

个人微信公众号:

评论

发表评论