maven的介绍
maven是Java的一个项目管理工具.
maven的作用
- 项目的管理依赖, 管理版本, 提供jar包的下载等等, 类似于Node.js的npm
- 构建项目, 同时编译整个项目的.java文件, 打包, 部署
- 测试项目
maven的两种使用方式
- 独立使用maven: 通过maven的命令来操作. 主要是为了学习使用
- 将maven作为idea等集成工具的插件来使用: 简单快捷, 不需要记命令. 开发中主要用这个方法
maven的安装
-
csdn中自己搜, 下载3.3.9的, 版本多高会出现麻烦的问题
-
路径中不要带中文
-
配置环境变量: 创建一个M2_HOME的变量, 值为maven的根路径. 然后在PATH变量中多添加一个值 — %M2_HOME%\bin
-
如果cmd中输入 mvn -v 能显示版本号的话, 就安装完成了
maven文件结构
maven中有两个很重要的文件:
1. \conf\settings.xml 是maven的配置文件
2. \bin\mvn.cmd
maven规范-项目结构
Hello(项目名)/
------/src
------------/main 主程序
------------------------/java 放java代码和java包 (编译到Hello/target/classes)
------------------------/resource 放配置文件 (编译到Hello/target/classes)
------------/test 测试程序
------------------------/java 放测试程序的代码和测试用的包 (编译到Hello/target/test-classes)
------------------------/resource 放测试使用的配置文件
------/pom.xml maven的核心,配置文件, 类似于npm的package.json文件
------/target maven编译后的结果, 简称结果目录
pom.xml
- 坐标(互联网中项目的唯一标识)的三个组成部分:
- groupId 组织名, 如com.baidu.hello
- artifactId 项目名
- version 项目的当前版本
坐标(gav)可以从https://mvnrepository.com/中去查找
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<!-- 版本只能是4.0.0 -->
<modelVersion>4.0.0</modelVersion>
<!--
含义:组织标识
命名规范: 域名的倒写 或 域名的倒写.项目名称, 如 com.baidu 或 com.baidu.testProject
-->
<groupId>com.baidu</groupId>
<!--
含义:项目名称(模块名称)
-->
<artifactId>testProject</artifactId>
<!--
含义:项目当前的版本号
命名规范: 可以在版本号后面加 -SNAPSHOT , SNAPSHOT的意思是快照, 即该版本还处于开发阶段, 还不稳定
-->
<version>1.0.0-SNAPSHOT</version>
<!-- 打包的格式,可以为:pom , jar , maven-plugin , ejb , war , ear , rar , par, 默认为jar, web为war -->
<packaging>war</packaging>
<!-- 项目依赖列表 -->
<dependencies>
<!--
依赖
坐标(gav)可以从https://mvnrepository.com/中去查找
-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId