2015-10-09 110 views
2

有趣的是,在POM中报告 - >配置元素和构建 - >配置元素之间的区别是什么Maven Report配置与构建配置

这是写在POM引用:

细微的差别是,报告 元素插件配置工作作为构建插件配置,虽然对面是 不是真的(生成插件配置不会影响一个报告 插件)。

http://maven.apache.org/pom.html#Reporting

你能给的行为的差异具体的例子?

回答

1

该声明意味着:

如果我们有报告生成插件配置像

<build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-project-info-reports-plugin</artifactId> 
       <version>2.8</version> 

       <configuration> 
        <linkOnly>true</linkOnly> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

然后调用网站生成命令

mvn site 

时linkOnly配置属性将不被使用相反,我们应该在报告元素下使用相同的配置:

<reporting> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-project-info-reports-plugin</artifactId> 
       <version>2.8</version> 

       <configuration> 
        <linkOnly>true</linkOnly> 
       </configuration> 

       <reportSets> 
        <reportSet> 
         <reports> 
          <report>license</report> 
         </reports> 
        </reportSet> 
       </reportSets> 
      </plugin> 
     </plugins> 
    </reporting> 

这里我们只生成配置参数linkOnly = true的许可证报告。

I.e.不使用构建配置。

注: 如果我们显式调用生成报告的目标“许可证”

mvn project-info-report:license 

它将使用build元素下配置。 也就是说我们在这里有相反的行为。