【问题标题】:Eclipse Java Compiler Warnings as ant taskEclipse Java 编译器警告作为 ant 任务
【发布时间】:2010-11-01 18:37:23
【问题描述】:

我希望将 Eclipse Java 编译器警告作为 ant 任务(即没有 Eclipse)提供 - 理想情况下作为 ant 插件 - 但如果出现 Eclipse 警告,我希望巡航控制 ant 任务失败。对于以下警告

  • 对静态成员的非静态访问

  • 带有构造函数名称的方法

  • 没有serialVersionUID的可序列化类

  • 赋值无效

  • 终于没有正常完成

  • 在字符串连接中使用 char 数组

  • 隐藏的 catch 块

  • 可变参数的类型不精确匹配

  • 空指针访问

  • 类型参数隐藏另一种类型

  • 方法不覆盖包可见方法

  • 接口方法与受保护的“对象”方法冲突

  • 从不读取局部变量

  • 未使用的本地或私有成员

  • 未经检查的泛型类型操作

  • 原始类型的使用

  • 使用最终类型绑定声明的泛型类型参数

  • 注解用作超级接口

我假设这意味着必须使用 Eclipse 抽象语法树 - 并且必须创建一个 Eclipse 编译单元。

问题是: (1) 这是否已经完成? (2) 如果没有 - 然后给出一个

org.eclipse.jdt.core.dom.CompilationUnit

object - 你如何(即在代码示例中)从这个 CompilationUnit 中获得警告?

(我知道 PMD、checkstyle 等 - 这些都不完全符合 eclipse 的编码风格偏好。我想要一个与 eclipse 编码风格完全匹配的 ant 任务)

【问题讨论】:

    标签: java eclipse ant coding-style compilationunit


    【解决方案1】:

    什么版本的eclipse?

    可以通过 ant 启动 JDT 编译器。见:

    http://help.eclipse.org/ganymede/topic/org.eclipse.jdt.doc.isv/guide/jdt_api_compile.htm

    请参阅“使用 ant javac 适配器”

    警告和错误附加到 Eclipse 工作区中的资源(例如文件或 CompilationUnits)。它们被称为“标记”。将警告作为标记而不是直接通过编译过程可能更容易。

    另一个值得研究的途径是启动 PDE 构建,但我认为这对您的要求来说太过分了,而且这样的构建脚本会随着时间的推移变得非常难以维护。

    【讨论】:

      猜你喜欢
      • 2017-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多