一、maven介绍
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,是报告和文档的项目管理工具软件。
依赖管理:管理jar
项目构建:POM(Project Object Model) 项目对象模型
官网:https://maven.apache.org
中文意思:专家、内行
主要功能
- 构造工程
- 管理jar包
- 编译代码
- 单元测试
- 打包项目
- 部署项目
二、搭建环境
- 下载
- 解压
- 目录
bin
boot
conf
lib - 配置环境变量
新建JAVA_HOME到JDK安装目录
把%JAVA_HOME%\bin添加到path中
新建MAVEN_HOME到maven安装目录
把%MAVEN_HOME%\bin添加到path中 - 测试
cmd>mvn -v
三、配置
1.仓库分类
- 本地仓库:第一次缓存过的
- 远程仓库:局域网或互联网中
- 中央仓库:http://repo1.maven.org/maven
2.maven配置修改
在maven\apache-maven-3.6.0\conf\settings.xml中
- 更换jar仓库存储位置
默认是在我的文档(C:\Users\lenovo中的.m2)
<localRepository>D:\maven\jar</localRepository>
- 更换镜像
阿里巴巴
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
3.Maven4IDEA
本地仓库设置
Fils/settings
搜索maven
Maven home directory
Use settings file
Local repository
三、新建maven项目
File/New/Project...
Maven
JDK
Create from archetype
maven-archetype-webapp
Groud Id 组织(公司)+项目
Artifact Id 模块
Version 版本
snapshot快照
非正式
release正式发布版
maven home directory
project name
project location
目录结构(标记目录作为–mark directory as)
src
main
java
resources
webapp
test
java
resources
target
pom.xml
四、pom.xml
1.packaging打包类型
jar
war
pom
2.maven工程
-
依赖查询
http://mvnrepository.com/ -
依赖范围scope
compile 编译√ 测试√ 运行√ 默认 provided 编译√ 测试√ 运行× servlet-api运行时被tomcat-api替代 runtime 编译× 测试√ 运行√ JDBC驱动 test 编译× 测试√ 运行× junit
system
与provided类似
需要提供 本地 jar的systemPath
不推荐使用 -
添加插件(pom.xml)
maven-compiler-plugin
tomcat7-maven-plugin
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/</path>
<port>80</port>
</configuration>
</plugin>
</plugins>
</build>
-
添加 运行 模式
tomcat7:run -
将清空运行一块执行
clean tomcat7:run(可在M下,可在Add Configuration添加Maven)
五、生命周期 Lifecycle
- clean:清理
- compile:编译
- test:测试
- package:打包
- validate:验证
- verify:核实
- site:站点
- install:安装
- deploy:部署
六、利用Maven构建javaWeb项目
- 将源文件放到 main\java
- 将配置文件放到 main\resources
- 将javaWeb项目web\WEB-INF下的 jsp文件放入maven中webapp下的WEB-INF,web中其余文件放入webapp下
- 将源代码中的 test 代码放入maven项目中的test\java中
- 若有过滤器添加重写初始化方法init()
- 在pom.xml中添加所需要的依赖,注意servlet-api的添加
- 为确保EL表达式正常解析,注意web.xml的版本