Maven的。仅构建具有部署配置文件的模块

时间:2017-05-09 12:40:44

标签: maven

上下文:

我有一个相当大的系统,在层次结构中形成了几个maven模块。当我需要开发时,我可以转到root并使用特定的配置文件构建-Pdeploy

这个问题是,我的整个项目都是构建的(这需要一段时间),而我实际上只需要构建十几个刚刚部署的轻量级模块。

部署时我应该如何提高团队的效率?

1 个答案:

答案 0 :(得分:0)

基本理念:您可能无法跳过构建模块,但可能会跳过包含的部分插件执行。

通常你的存储库已经存在构建模块工件,因此一旦上一次构建运行并且可以从那里拉出模块工件,整体速度应该已经更好。

您的想法是添加一个配置文件设置,根据您在执行部署配置文件构建时可能要忽略的内容来定义skip-properties。

  <profiles>
    <profile>
      <id>default</id>
      <activation>
        <activeByDefault />
      </activation>
      <properties>
        <skip.documentation>false</skip.documentation>
        <skip.sign>false</skip.sign>
        <skip.sources>false</skip.sources>
        <skip.checks>false</skip.checks>
        <skip.reports>false</skip.reports>
        <skip.installer>false</skip.installer>
      </properties>
    </profile>

    <profile>
      <id>deploy</id>
      <properties>
        <skip.documentation>true</skip.documentation>
        <skip.sign>true</skip.sign>
        <skip.sources>true</skip.sources>
        <skip.checks>true</skip.checks>
        <skip.reports>true</skip.reports>
        <skip.installer>true</skip.installer>
      </properties>
    </profile>
  </profiles>

你的pom可能包含

<plugin>
  <artifactId>maven-checkstyle-plugin</artifactId>
  <version>${version.maven-checkstyle-plugin}</version>
  <configuration>
    <skip>${skip.checks}</skip>
  </configuration>
</plugin>

此方法可应用于项目pom级别(pluginDependencies)或在每个模块中重写。