【问题标题】:How to get compiler warnings when building a Jenkins plugin构建 Jenkins 插件时如何获得编译器警告
【发布时间】:2014-05-20 21:26:54
【问题描述】:

我正在编写一个 Jenkins 插件,但对 Java 和 Maven 都很陌生。

当我在 intelliJ 中构建插件时,我得到了我希望看到的所有编译器警告(例如弃用警告),但我找不到通过命令行编译的方法来显示这些警告(例如,使用 mvn hpi :hpi / mvn 编译)

我尝试将以下几行添加到 Maven 设置文件的 maven-compiler-plugin 部分,但无济于事:

<showDeprecation>true</showDeprecation>
<showWarnings>true</showWarnings>

这样做的最终目的是在 jenkins 上编译插件并将警告输入到警告插件中。

【问题讨论】:

  • 我正在尝试同样的事情。你成功了吗?
  • 还没有,不过如果我弄明白了,我一定会回帖的。

标签: maven plugins jenkins warnings


【解决方案1】:

您可以尝试两个建议:

1) 添加编译器参数 -Xlint:all:

<plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-compiler-plugin</artifactId>
 <version>3.0</version>
 <configuration>
      <source>1.6</source>
      <target>1.6</target>
      <compilerArgument>-Xlint:all</compilerArgument>
      <showWarnings>true</showWarnings>
      <showDeprecation>true</showDeprecation>
  </configuration>
</plugin>

2.) 尝试像这样通过命令行传递参数:

mvn clean install -Dmaven.compiler.showDeprecation=true

祝你好运!

【讨论】:

    【解决方案2】:

    根据 TimHauschildt 的回答,我不得不将我的 jenkins pom.xml 文件修改为如下所示:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <parent>
        <groupId>org.jenkins-ci.plugins</groupId>
        <artifactId>plugin</artifactId>
        <version>1.509.4</version>
      </parent>
    
      <groupId>org.jenkins-ci.plugins</groupId>
      <artifactId>test-plugin</artifactId>
      <version>1.00</version>
      <name>Test Plugin</name>
      <packaging>hpi</packaging>
    
      <repositories>
        <repository>
          <id>repo.jenkins-ci.org</id>
          <url>http://repo.jenkins-ci.org/public/</url>
        </repository>
      </repositories>
    
      <pluginRepositories>
        <pluginRepository>
          <id>repo.jenkins-ci.org</id>
          <url>http://repo.jenkins-ci.org/public/</url>
        </pluginRepository>
      </pluginRepositories>
    
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>3.0</version>
              <configuration>
              <source>1.6</source>
              <target>1.6</target>
              <compilerArgument>-Xlint:all</compilerArgument>
              <showWarnings>true</showWarnings>
              <showDeprecation>true</showDeprecation>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    
    </project>
    

    然后运行mvn compile。 之后,Jenkins 中的警告插件可以接收警告。

    -Dmaven.compiler.showDeprecation=true 选项也很有效,但输出量取决于 jenkins/maven 默认选择的编译器插件版本。

    【讨论】:

      猜你喜欢
      • 2011-01-27
      • 1970-01-01
      • 1970-01-01
      • 2016-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-29
      相关资源
      最近更新 更多