【问题标题】:How to make maven fail on raw types?如何使 Maven 在原始类型上失败?
【发布时间】:2013-05-08 11:50:07
【问题描述】:

如果在代码中的某处使用了原始类型(缺少泛型),我想让 maven 编译失败。我尝试了以下方法:

  1. javac 无法识别这些错误(eclipse 编译器会);从版本 7 开始,javac-Xlint:rawtypes 参数可用于在使用原始类型时发出警告。不幸的是,我必须使用不支持此标志的 java 6。
  2. CheckStyle 没有此类事情的规则。
  3. PMD 也无法检查原始类型。

如果使用原始类型,是否有任何其他 maven 模块或技巧会产生错误?

【问题讨论】:

  • javac 有一个未记录的 -Werror 标志,但所有警告都会失败,而不是特定的原始类型。
  • 原始类型在 1.7 之前的版本中不会对 javac 发出警告。
  • 你能不使用Java 7编译器并使用标志,而是在编译器配置中使用目标级别1.6吗?

标签: maven generics javac


【解决方案1】:

不知道有没有用,不过可以在maven中使用eclipse编译器

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-compiler-plugin</artifactId>
   <version>2.3.2</version>
   <configuration>
      <compilerId>eclipse</compilerId>
      <source>1.6</source>
      <target>1.6</target>
   </configuration>
   <dependencies>
      <dependency>
         <groupId>org.codehaus.plexus</groupId>
         <artifactId>plexus-compiler-eclipse</artifactId>
         <version>1.8.2</version>
      </dependency>
   </dependencies>
</plugin>

【讨论】:

    猜你喜欢
    • 2023-02-02
    • 2011-04-04
    • 1970-01-01
    • 1970-01-01
    • 2012-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多