maven中的pom文件结构
POM文件
即 Project Object Model 项目对象模型。Maven 把一个项目的结构和内容抽象成一个模型,在 xml 文件中
进行声明,以方便进行构建和描述,pom.xml 是 Maven 的灵魂。所以,maven 环境搭建好之后,所有的学习和
操作都是关于 pom.xml 的。
<?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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.hlchacker</groupId> <artifactId>ch01-maven</artifactId> <version>1.0-SNAPSHOT</version> <properties> <java.version>1.8</java.version> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <dependencies> <!--依赖Java代码中import--> <!-- 单元测试 --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> </dependencies> <!--控制配置 mavne构建项目的参数设置,设置jdk的版本--> <build> <!--配置插件--> <plugins> <!--配置具体的插件--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <!--插件的名称--> <version>3.8.1</version> <!--插件的版本--> <!--配置插件的信息--> <configuration> <source>1.8</source> <!--告诉maven我们写的代码是在jdk1.8上编译的--> <target>1.8</target> <!--我们的程序应该运行在1.8的jdk上--> </configuration> </plugin> </plugins> </build> </project>
pom:项目对象模型,是一个 pom.xml文件
1)坐标(gav):唯一值,在互联网中唯一标识一个项目的
groupId:组织名,通常是公司或组织域名倒序+项目名
artifactId:模块名,通常是工程名
version:版本号
特别指出的是,项目在仓库中的位置是由坐标来决定的:groupId、artifactId和version决定项目在仓库中的路径,artifactId和version决定jar包的名称
<groupId>公司域名的倒写</groupId>
<artifactId>自定义项目名称</artifactId>
<version>自定义版本号</version>
https://mvnrepository.com/ 搜索使用的中央仓库,使用groupId或者artifactId作为搜索条件
2)package:打包后压缩文件的扩展名,默认是jar,web应用是war
package可以不写,默认是jar
3)依赖
dependencies和dependency,相当于是Java代码中import
<dependencies>
<!--依赖Java代码中import-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.9</version>
</dependency>
</dependencies>
4)properties:设置属性
<properties>
<java.version>1.8</java.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
5)build:maven在进行项目的构建时,配置信息,例如指定编译Java代码使用的jdk版本等