maven-爱代码爱编程
1. 为什么使用maven
Apache Maven是个项目管理和自动构建工具,基于项目对象模型(POM)的概念。
- 使用maven可以帮助我们处理第三方依赖,及传递依赖。
- 规范目录结构,(可以通过配置使用个性化的目录结构,但不建议这么做)
- 方便的打包,部署功能
- 方面的多模块管理能力
- 丰富的扩展插件,扩展功能,如代码检查插件,单元测试插件等。
2. 什么是自动构建工具
- 原始方式HelloWorld.java --(javac) --> HelloWorld.class ----> java HelloWorld
- IDE集成开发环境例如: eclipse,IDEA
- 传统的web项目搭建时,一般是先手动的获取依赖的jar包,然后在放入web-inf的lib包下,如果存在传递依赖,则需要自己将相关的jar包下载下来并放入web-inf的lib包下。使用maven只需要在pom配置文件中将依赖配置好,maven会自动处理依赖。
- 3. 常用的构建工具antmavenGradle android项目管理和构建已使用
3. 常用的构建工具
- ant
- maven
- Gradle android项目管理和构建已使用
4. Maven安装与配置
4.1 下载
载maven安装包,解压即可使用,下载地址:http://maven.apache.org/download.cgi
4.2 配置maven环境变量
- MAVEN_HOME
- M2_HOME
- 修改path添加maven相关路径
4.3 验证
doc窗口执行命令“mvn –version”
4.4 配置
1) 换源
- 为什么换源
- 如何将源换成阿里云
<mirrors>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>
2) 配置本地仓库的位置
默认的本地仓库在C:\Users\你的用户\.m2, 如果需要可以修改本地仓库的配置
<localRepository>在此指定自己的目录</localRepository>
5. 基本概念
5.1 maven的三种仓库
- 远程仓库
- 公司私服
- 本地仓库
5.2 maven坐标
- group id:组织id,一般就是公司域名反写
- artifact id:项目名字
- version:版本
- groupId命名规则:
- 建议使用公司或组织的域名,例如com.example,org.apache等等。
- 如果你没有一个域名,可以使用你自己的名字或项目的名称。
- groupId应该是唯一的,以避免与其他项目冲突。
- artifactId命名规则:
- artifactId是项目的名称,它应该是短小精悍的,能够清楚地表达出项目的目的。
- 一般来说,artifactId应该是小写字母,可以使用连字符(-)或下划线(_)来分隔单词。
例如,如果你正在开发一个名为"myproject"的项目,并且你的公司域名为"com.example",那么你的groupId将是"com.example",artifactId将是"myproject"。
5.3 标准目录结构
- src/main(源代码)
- src/test(测试代码)
- target 编译后、打包后的文件
5.4 pom介绍
Project Object Model,项目对象模型。通过xml格式保存的pom.xml文件。作用类似ant的build.xml文件,功能更强大
该文件用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等。
6. 在IDEA中创建maven项目
- 使用maven创建项目,选择archetype,我们创建的是web所以做如下选择
- 输入项目名,项目保存的位置等信息
- 检查maven的相关配置
- 项目创建完成的界面
- 手动添加java,及test的源码目录
- 将web.xml修改成为3.0或以上版本