Maven是什么呢?
今天笔者去面试,遇到了一个面试官,直接问"说一下你对Maven这个工具的认识",
下文是笔者收集的Maven的简介说明,如下所示:
避免出现各种版本不正确的现象
便于项目升级
便于多模块开发,一个模块开发完毕后,放入仓库中,即可进行下一个版本的开发
Maven必须遵守其约定大于配置的原则,一旦出现问题,调试将会很复杂
Maven仓库访问慢,很多优秀的仓库无法访问,如:Google Code,JBoss仓库等
下文是笔者收集的Maven的简介说明,如下所示:
Maven简介说明
Maven用于Java平台中项目构建,依赖管理,项目信息管理Maven的功能分为以下几点
- 依赖管理系统
- 多模块构建
- 统一的项目结构
- 统一的构建模型和插件机制
Maven功能
Maven可实现分模块构建,采用此种方式构建项目,使系统的开发和打包效率更高效 Maven可使不同系统之间进行统一的依赖管理,并通过这些实现依赖之间的传递和继承Maven约定
Maven项目必须遵守以下约定Maven项目必须采用以下目录结构: /src/main/java/:Java 源码 /src/main/resource:Java 配置文件,资源文件 /src/test/java/:Java 测试代码 /src/test/resource:Java 测试配置文件,资源文件 /target:文件编译过程中生成的 .class 文件、jar、war 等 pom.xml:配置文件采用以上目录结构定义,主要为Maven实现自动编译服务
Maven常用的命令如下所示:
mvn archetype:create:创建 Maven 项目 mvn compile:编译源代码 mvn deploy:发布项目 mvn test-compile:编译测试源代码 mvn test:运行应用程序中的单元测试 mvn site:生成项目相关信息的网站 mvn clean:清除项目目录中的生成结果 mvn package:根据项目生成的 jar/war 等 mvn install:在本地 Repository 中安装 jar mvn eclipse:eclipse:生成 Eclipse 项目文件 mvn jetty:run 启动 Jetty 服务 mvn tomcat:run:启动 Tomcat 服务 mvn clean package -Dmaven.test.skip=true :清除以前的包后重新打包,跳过测试类
Maven的优点和缺点
优点
减少项目的依赖管理避免出现各种版本不正确的现象
便于项目升级
便于多模块开发,一个模块开发完毕后,放入仓库中,即可进行下一个版本的开发
缺点
Maven很大,无法快速学习Maven必须遵守其约定大于配置的原则,一旦出现问题,调试将会很复杂
Maven仓库访问慢,很多优秀的仓库无法访问,如:Google Code,JBoss仓库等
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。