本帖最后由 miaoxiong 于 2019-5-22 19:40 编辑
inceptionYear 项目创建年份,4位数字。当产生版权信息时需要使用这个值。
issueManagement 定义缺陷跟踪系统信息,主要用于生成项目文档。
scm 声明版本管理工具信息
maven-assembly-plugin 将站点文档、模块、依赖项等聚合到一个压缩包中。它支持打包成:
- zip
- tar
- tar.gz (or tgz)
- tar.bz2 (or tbz2)
- tar.snappy
- tar.xz (or txz)
- jar
- dir
- war
maven-compiler-plugin 3.0版本起,默认的编译版本是1.6.默认的编译器是 javax.tools.JavaCompiler。而非javac 。可以使用forceJavacCompilerUse更换编译器为javac。可以设置source和target,更换jdk版本。
maven-surefire-plugin maven测试阶段,可以生成测试报告用。可以生成txt和xml
maven-enforcer-plugin 控制环境约束,如Maven版本、JDK版本和OS系列以及更多的内置规则和用户创建的规则
fail :当定义的规则失败时,目标goal执行就要失败,那么设置为true。
dependencyManagement
用于帮助管理其所有子代的依赖关系信息。如果我的父项目使用DependencyManagement定义对junit:junit:4.12的依赖关系,那么继承自此项目的POM可以设置它们的依赖关系,只提供groupid=junit和artifactid=junit,maven将填充父项目设置的版本。这种方法的好处是显而易见的。可以在一个中心位置设置依赖项详细信息,该位置将传播到所有继承的POM。
请注意,artifacts 依赖传递的版本和范围也由dependency management 中指定version规范控制的。这会导致意想不到的后果。考虑一个您的项目使用两个依赖项dep1和dep2的情况。DEP2反过来也使用DEP1,并且需要特定的最低版本才能工作。如果使用DependencyManagement指定旧版本,则Dep2将强制使用旧版本,并失败。所以,您必须仔细检查整个依赖树以避免这个问题;mvn dependency:tree就很用了。
|
|