Maven pom.xml解析
本文详细介绍了Maven项目的核心配置文件pom.xml的各个部分及其作用,包括项目基础信息、构建环境、仓库管理、依赖管理等内容,并提供了丰富的配置示例。
文章信息
- 原文链接:https://jiayq.blog.csdn.net/article/details/109339992
- 发布时间:2020-10-28 18:59:21
- 阅读量:730
- 分类:Maven专栏收录该内容, 订阅专栏
- 标签:#Maven pom.xml, #pom.xml解析, #pom.xml怎么写, #Maven插件如何配置, #Maven依赖如何配置
摘要
文章浏览阅读730次。本文详细介绍了Maven项目的核心配置文件pom.xml的各个部分及其作用,包括项目基础信息、构建环境、仓库管理、依赖管理等内容,并提供了丰富的配置示例。
Maven pom.xml解析
- Maven pom.xml解析
- setting.xml
- pom.xml
- setting.xml
github地址
https://github.com/a18792721831/studyMaven.git
文章列表:
Maven最全知识
[INFO] Generating project in Batch mode
Maven项目的目录结构
Maven仓库解析
Maven pom.xml解析
MVN命令与生命周期
Maven私有仓库的搭建和使用
Maven依赖
Maven pom.xml解析
对于Maven来说,核心的配置只有两个,分别是setting.xml和pom.xml。
setting.xml
在Maven的config目录下,有一Maven自己的setting.xml文件。
相关的配置说明如下:
在配置文件中也有说明
当然,Maven和Gradle类似,在跟项目中可以配置整个跟项目的配置,跟项目的配置,全部的子项目共享。
所以,在Gradle中有setting.gradle。setting.gradle在跟项目的路径下。
相对应的,在Maven中也有setting.xml。setting.xml也在跟项目的路径下。
子项目共享跟项目的配置。
pom.xml
在项目中,有项目自己的配置。
比如在Gradle中是build.gradle,在Maven中就是build.gradle了。
到目前为止,我们现在有三个配置文件:Maven的配置,跟项目的配置,子项目的配置。
那么,这三个项目的优先级是怎么样的呢?
pom.xml > settings.xml(project) > settings.xml(maven)
也就是说,子项目中配置的是优先级最高的,接下来是跟项目的配置,最后是Maven的配置。
- 项目基础信息配置
- 项目构建环境配置
- 项目仓库管理配置
- 项目依赖管理配置
- 项目报表信息配置
项目部署分发配置
<?xml version=”1.0” encoding=”UTF-8”?>
studyMaven org.study 1.0-SNAPSHOT ../pom.xml 4.0.0 org.study study-helloMaven 1.0-SNAPSHOT war study-helloMaven Maven Webapp http://www.example.com study maven project. 2020 study abc@ss.com def@ss.com ghi@ss.com http://localhost:8080/ xx zz xx@xx.com http://xxx.com user1 manage1 study http://study.com XX +8 zz xx@xx.com http://www.baidu.com xx http://xx.com xx x 7 Apache2 http://www.baidu.com repo this is the comments scm:svn:http://svn.xx.com/maven/xxxxx scm:svn:http://svn.xxx.com/xxxx 1 http://svn.xxxx.com hello http://wwww.hello.com UTF-8 1.7 1.7 jira http://jira.xxxx.com jenkins http://jenkins.xx.com mail true true true true aa@mail.comjunit junit 4.11 test jar false javax.servlet javax.servlet-api 4.0.1 provided javax.servlet.jsp javax.servlet.jsp-api 2.3.3 provided org.yaml snakeyaml 1.23 provided src src/main/resources src/test .out .out succ .target false src/main/resources **/*.yaml **/*.log .target false src/test/resources **/*.yaml **/*.log study-helloMaven org.apache.tomcat.maven tomcat7-maven-plugin 2.2 false 1 clean run false 127.0.0.1 8080 org.apache apache 21 provided maven-clean-plugin 3.1.0 maven-resources-plugin 3.0.2 maven-compiler-plugin 3.8.0 maven-surefire-plugin 2.22.1 maven-war-plugin 3.2.2 maven-install-plugin 2.5.2 maven-deploy-plugin 2.8.2 dev false jdk11 Linux root x64 7 /usr/local/xx.l /usr/local/yy.l x y r1 release http://sss.com default false never warn false never warn r2 xx http://cc.xom default false never warn false never warn true .site org.apache.maven.plugins maven-site-plugin 3.3 false false 1 xx ftp://xx.com default false 1 xx ftp://ss.com default xxx xxxx scp://svn.baidu.com http://www.baidu.com xxxx xxxx xxx xxxx none


