从命令行

时间:2016-07-06 08:47:19

标签: java maven maven-3 maven-plugin checkstyle

常规:我需要从命令行执行maven插件,并重写依赖版本(插件依赖项)。插件不会在项目pom中定义。

具体:我需要在teamcity构建中执行maven-checkstyle-plugin;这个插件不会被定义为项目pom。我使用以下命令行:

 mvn org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check -Dencoding=UTF-8

但我需要使用最新的checkstyle执行插件,如here所示。

POM xml:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <version>2.17</version>
</plugin>

命令行:

mvn org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check

POM xml:

<plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-checkstyle-plugin</artifactId>
      <version>2.17</version>
      <dependencies>
        <dependency>
          <groupId>com.puppycrawl.tools</groupId>
          <artifactId>checkstyle</artifactId>
          <version>7.0</version>
        </dependency>
      </dependencies>
    </plugin>

命令行:

?

1 个答案:

答案 0 :(得分:0)

最佳做法是使用您的设置创建Maven profile,然后在构建CI时激活此配置文件。

示例资料:

<profiles>
<profile>
  <id>ci</id>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <version>2.17</version>
        <dependencies>
          <dependency>
            <groupId>com.puppycrawl.tools</groupId>
            <artifactId>checkstyle</artifactId>
            <version>7.0</version>
          </dependency>
        </dependencies>
      </plugin>
    </plugins>
  </build>
</profile>
</profiles>

如何在TeamCity上启用它:mvn checkstyle:check -Pci

通常execution部分会添加到配置文件配置中,以使插件目标在某个阶段自动作为正常构建的一部分运行,但仅当ci配置文件通过例如{{1}启用时}}