Eclipse Java编译器警告作为ant任务

Eclipse Java编译器警告作为ant任务,java,eclipse,ant,coding-style,compilationunit,Java,Eclipse,Ant,Coding Style,Compilationunit,我希望EclipseJava编译器警告可以作为一个ant任务(即没有eclipse的情况下)使用——理想情况下是作为ant插件使用——但是如果出现eclipse警告,我希望巡航控制ant任务失败。对于以下警告: 对静态成员的非静态访问 具有构造函数名称的方法 不带serialVersionUID的可序列化类 转让无效 最后不能正常完成 在字符串连接中使用字符数组 隐藏式挡块 vararg参数的类型匹配不精确 空指针访问 类型参数隐藏另一个类型 方法不重写包可见方法 接口方法与受保护的“对象”方

我希望EclipseJava编译器警告可以作为一个ant任务(即没有eclipse的情况下)使用——理想情况下是作为ant插件使用——但是如果出现eclipse警告,我希望巡航控制ant任务失败。对于以下警告:

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

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

  • 不带serialVersionUID的可序列化类

  • 转让无效

  • 最后不能正常完成

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

  • 隐藏式挡块

  • vararg参数的类型匹配不精确

  • 空指针访问

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

  • 方法不重写包可见方法

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

  • 局部变量永远不会被读取

  • 未使用的本地或私人会员

  • 未选中的泛型类型操作

  • 原始类型的使用

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

  • 注释用作超级接口

我假设这意味着必须使用eclipse抽象语法树,并且必须创建eclipse编译单元

问题是: (1) 这样做了吗? (2) 如果没有,那就给一个

org.eclipse.jdt.core.dom.CompilationUnit
对象-如何(在代码示例中)从这个编译单元中获取警告


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

什么版本的eclipse

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

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

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

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