POM project Object Model 项目对象模型 ,读取POM ,获取所需配置新消息,执行目标。
指定配置内容,
流程
创建pom,需要描述项目组,groupid,项目唯一id
<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>
<!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成, 如com.companyname.project-group,maven会将该项目打成的jar包放本地路径:/com/companyname/project-group -->
<groupId>com.companyname.project-group</groupId>
<!-- 项目的唯一ID,一个groupId下面可能多个项目,就是靠artifactId来区分的 -->
<artifactId>project</artifactId>
<!-- 版本号 -->
<version>1.0</version>
</project>
所有pom文件都需要project 元素 和三个必要字段,groupid,artifactid,version
属性 | 内容 |
---|---|
project | 工程根标签 |
modelVersion | 模型版本 |
groupId | 工程组的表示。基本唯一。影响配置路径 |
artifactID | 这是工程的标识。工程名称,groupId 和 artifactId 一起定义了artifact在仓库中的位置 |
version | 版本工程号,artifact仓库中,用来区分不同版本 |
父pom
这里不做展开
maven 构建配置文件
类型 | 位置 |
---|---|
项目级 | 定义在pom文件pom.xml中 |
用户级per user | 定义在maven的设置文件中, %USER_HOME%/.m2/settings.xml |
global | 定义在maven全局的设置xml中 |
仓库
本地 local
默认在 ./m2/respository中
中央 central
是由maven社区提供的仓库,其中包含了大量常用的库。
这个仓库有maven社区管理
不需要配置
通过网络才能访问
远程 remote
由开发人员自己定制仓库,包含了所需要的代码库或者其他工程中用到的jar。
常用标签
build 两种build
<build>
<finalName>ccweb-dev</finalName> //按照你自己的设置的名字作为包名
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>utf8</encoding>
</configuration>
</plugin>
</plugins>
</build>
? 主要用于编译设置
porperties
Properties可以在整个POM中使用,也可以作为触发条件(见settings.xml配置文件里activation元素的说明)。格式是
<properties>
<spring.version>4.3.6.RELEASE</spring.version>
……
</properties>
dependencies
依赖引入
<dependencies>
<!-- 引入Druid数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>${druid.version}</version>
</dependency>
</dependencies>
以上,不全,建议系统看书
原文:https://www.cnblogs.com/EsMussSeinHui/p/11151349.html