POM是項目對象模型(Project Object Model)的簡稱。
pom.xml主要描述了項目的maven坐標,該文件用于管理:源代碼、配置文件奉芦、開發(fā)者的信息和角色、問題追蹤系統(tǒng)剧蹂、組織信息声功、項目授權(quán)、項目的url宠叼、項目的依賴關(guān)系等等先巴。是項目級別的配置文件。
聲明規(guī)范
<?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">
<!-- pom版本標簽;必須標簽车吹,表示是一個固定的版本筹裕,指定了當前pom的版本 -->
<modelVersion>4.0.0</modelVersion>
groupId
<!-- 公司或者組織的唯一標志醋闭,并且配置時生成的路徑也是由此生成窄驹, 如org.sang,maven會將該項目打成的jar包放本地路徑:/org/sang -->
<groupId>org.sang</groupId>
artifactId
<!-- 本項目唯一的id,一個groupId下面可以有很多個項目证逻,就是靠artifactId來區(qū)分的 -->
<artifactId>blogserver</artifactId>
version
<!-- 本項目目前所處的版本號 -->
<version>0.0.1-SNAPSHOT</version>
packaging
<!-- 打包的機制乐埠,如pom,jar, maven-plugin, ejb, war, ear, rar, par,默認為jar -->
<packaging>jar</packaging>
name
<!-- 項目的名稱,maven生成文檔與展示的時候用 -->
<name>blogserver</name>
description
<!-- 本項目的詳細描述 -->
<description>Vue博客服務(wù)端</description>
parent
<!--父項目的坐標丈咐。如果項目中沒有規(guī)定某個元素的值瑞眼,那么父項目中的對應(yīng)值即為項目的默認值。坐標包括groupID棵逊,artifactID和version等伤疙。-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
<!--父項目的pom.xml文件的相對路徑。相對路徑允許你選擇一個不同的路徑辆影。默認值是../pom.xml徒像。Maven首先在構(gòu)建當前項目的地方尋找父項目的pom,其次在文件系統(tǒng)的這個位置(relativePath位置)蛙讥,然后在本地倉庫锯蛀,最后在遠程倉庫尋找父項目的pom。-->
<relativePath/> <!-- lookup parent from repository -->
</parent>
properties
<!-- 為pom定義一些常量次慢,在pom中的其它地方可以直接引用 -->
<properties>
<!-- 項目編碼 -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- java版本 -->
<java.version>1.8</java.version>
</properties>
dependencies
<!--本項目的所有依賴關(guān)系 -->
<dependencies>
<!-- 每個dependency都對應(yīng)這一個jar包 -->
<dependency>
<!--依賴的坐標-->
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.29</version>
</dependency>
</dependencies>
build
<!-- 構(gòu)建配置 -->
<build>
<!--這個元素描述了項目相關(guān)的所有資源路徑列表旁涤,例如和項目相關(guān)的屬性文件,這些資源被包含在最終的打包文件里迫像。-->
<resources>
<!--這個元素描述了項目相關(guān)的資源路徑-->
<resource>
<!--描述存放資源的目錄劈愚,該路徑相對POM路徑 -->
<directory>src/main/java</directory>
<!--包含的模式列表 -->
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<!--使用的插件列表 -->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
</plugins>
</build>