Maven 安装编译
Maven 就是专门为 Java 项目打造的管理和构建工具,它的主要功能有:
- 提供了一套标准化的项目结构;
- 提供了一套标准化的构建流程(编译,测试,打包,发布……);
- 提供了一套依赖管理机制。
默认结构:
1a-maven-project
2├── pom.xml
3├── src
4│ ├── main
5│ │ ├── java
6│ │ └── resources
7│ └── test
8│ ├── java
9│ └── resources
10└── target
项目的根目录a-maven-project
是项目名,
它有一个项目描述
文件pom.xml
,
存放Java源码
的目录是src/main/java
,
存放资源文件
的目录是src/main/resources
,
存放测试源码
的目录是src/test/java
,
存放测试资源
的目录是src/test/resources
,
最后,所有编译、打包生成的文件
都放在target
目录里。
这些就是一个 Maven 项目的标准目录结构。
pom.xml 文件:
1<project ...>
2 <modelVersion>4.0.0</modelVersion>
3 <groupId>com.itranswarp.learnjava</groupId>
4 <artifactId>hello</artifactId>
5 <version>1.0</version>
6 <packaging>jar</packaging>
7 <properties>
8 ...
9 </properties>
10 <dependencies>
11 <dependency>
12 <groupId>commons-logging</groupId>
13 <artifactId>commons-logging</artifactId>
14 <version>1.2</version>
15 </dependency>
16 </dependencies>
17</project>
groupId
类似于 Java 的包名,通常是公司或组织名称,artifactId
类似于 Java 的类名,通常是项目名称,version
,一个 Maven 工程就是由groupId,artifactId和version
作为唯一标识。
我们在引用其他第三方库的时候,也是通过这 3 个变量确定。
依赖commons-logging
:
1<dependency>
2 <groupId>commons-logging</groupId>
3 <artifactId>commons-logging</artifactId>
4 <version>1.2</version>
5</dependency>
使用<dependency>
声明一个依赖后,Maven 就会自动下载这个依赖包并把它放到classpath
中。