Maven的pom.xml文件解析
2017-08-22 11:55
295 查看
<!--根元素--> <project> <!--该Maven项目的坐标,groupId、artifactId、version--> <groupId>反写的公司网址+项目名</groupId> <artifactId>项目名+模块名</artifactId> <!-- 第一个0 表示大版本号 第二个0 表示分支版本号 第三个0 表示小版本号 0.0.1 snapshot快照 alpha内部测试 beta公测 Release稳定 GA正式发布 --> <version></version> <!--默认是jar war zip pom--> <packaging></packaging> <!--项目描述名--> <name></name> <!--项目地址--> <url></url> <!--描述信息--> <description></description> <developers></developers> <licenses></licenses> <organization></organization> <dependencies> <dependency> <groupId></groupId> <artifactId></artifactId> <version></version> <type></type> <!--依赖范围--> <scope>test</scope> <!--设置依赖是否可选--> <optional><optional> <!--排除依赖传递列表--> <exclusions> <exclusion> </exclusion> </exclusions> </dependency> </dependencies> <!--依赖管理--> <dependencyManagement> <dependencies> <dependency></dependency> </dependencies> </dependencyManagement> <build> <!--插件列表--> <plugins> <plugin> <!--指定坐标--> <groupId></groupId> <artifactId></artifactId> <version></version> </plugin> </plugins> </build> <!--一般在子模板中指定所继承的父模板--> <parent></parent> <!--模板列表--> <modules> <module></module> </modules> </project>
要点1:install指令能把项目打包到本地仓库,运行install指令,同时还运行了package打包。
编译一个项目,如果存在依赖,首先会在本地仓库查找,如果没找到,直接到中央仓库查找,
如果还是没找到,则报错。所以编译一个存在本地依赖的项目,本地依赖一定要运行install指令,把依赖的项目打包到本地仓库。
要点2: 如果想排除某个依赖的项目,则需要在pom.xml添加exclusions标签,添加到已经添加了排除依赖的依赖里,把需要排除的依赖的坐标引进来。
要点3:
常用指令:
compile 编译
package 打包
clean删除target既字节码文件和测试报告
install 安jar包到本地仓库
要点4:聚合和继承
聚合:如果项目D依赖项目C,项目C依赖项目B,项目B依赖项目A,我们需要一个个安装这项项目,
在Maven中有一种方式可以将多个项目一次性安装,这就是聚合的概念。简单讲就是,需要人工多次操作的,
只要Maven能理解,一次性告诉他,他就能帮我们做这件单调烦人的事情了。——使用这个标签。
继承:多次使用到的依赖,比如:单元测试,没有必要在所有的项目中都引用一下,此时就可以采用继承的方式来实现,
先来一个父级的POM.XML然后再继承此POM.XML。
1. packaging 改为pom。
2. dependencyManagement 中并不提取依赖,只进行统一管理。
3. property中定义了junit版本号,之后可以引用。
4. 父类parent中的main和test没有意义,可以删除。
相关文章推荐
- maven中单独pom.xml文件解析(maven还存在继承关系)
- Maven学习笔记二eclipse如何使用 Maven、Maven目录pom.xml文件的解析、maven 和maven项目之间的关系
- Maven管理SSM框架的pom.xml文件配置
- Maven的pom.xml文件结构之Build配置build
- Maven项目pom.xml文件报xxx\target\classes\META-INF\MANIFEST.MF (系统找不到指定的路径)问题
- eclipse加载maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-plugin:2.4.3解决方案
- eclipse加载maven工程提示pom.xml无法解析
- 【Maven项目】【pom.xml文件的部署】【管理jar】
- maven的pom.xml文件配置(2)
- Hudson与Maven集成时出现pom解析出错的问题
- 史上最全的maven的pom.xml文件详解
- myeclipse加载maven工程提示pom.xml无法解析!
- Maven的pom.xml文件结构之环境配置profiles
- Maven项目pom.xml文件报xxx\target\classes\META-INF\MANIFEST.MF (系统找不到指定的路径)问题
- maven配置pom.xml文件详解
- sts加载maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-plugin:2.4.3解决方案
- eclipse加载maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-plugin:2.4.3解决方案
- Maven管理SSM框架的pom.xml文件配置(自动下载所依赖的jar包)
- maven创建ssm框架的pom.xml文件配置
- 史上最全的maven的pom.xml文件详解