java - Eclipse Java 编译器将所有警告视为错误 (3.6.2)

标签 java eclipse compiler-errors compiler-warnings

如何在 Eclipse Java 编译器 (ECJ) 3.6.2* 从命令行运行时将警告视为错误

较新的版本(至少 3.8.2)具有 -err:all 标志,但这在 3.6.2 中不可用。我还有其他选择吗?

我发现这个问题( Javac: Treat warnings as errors )建议使用未记录的 -Werror 标志,但这似乎只适用于 javac。

注意:由于各种完全超出我控制范围的原因,我必须使用 ECJ 3.6.2。因此,切换到较新的版本或 javac 不是一个选择(至少在不久的将来不会)!

<小时/> * 似乎也被称为 "JDT Core Batch Compiler"

最佳答案

我认为没有办法指定 err:all,但有一个不错的解决方法:

  1. 创建 Eclipse 项目。
  2. 项目 > 属性 > Java 编译器 > 错误/警告。
  3. 启用项目特定设置。
  4. 手动将所有内容设置为错误级别(很烦人,但是是一次性操作)。
  5. 这会生成一个 org.eclipse.jdt.core.prefs 文件。
  6. 在编译过程中使用project/.settings/org.eclipse.jdt.core.prefs 文件。

这是一个使用 ant 的示例:

<javac srcdir="${test-unit.dir}" destdir="${target-test-classes.dir}" 
        classpathref="test.classpath" source="1.6" target="1.6" debug="true" 
        includeAntRuntime="false" compiler="org.eclipse.jdt.core.JDTCompilerAdapter">
    <compilerclasspath location="./libs/ecj-3.7.2.jar" />
    <compilerarg line="-time -properties .settings/org.eclipse.jdt.core.prefs" />
</javac> 

关于java - Eclipse Java 编译器将所有警告视为错误 (3.6.2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14927376/

相关文章:

javascript - 编辑Wordpress模板

java - JDBC 瘦驱动程序 : Invalid Packet Lenght [sic]

java - 使用 eclipse GUI 设置 Maven 原型(prototype)

java - Eclipse 只在本地存储库中查找 jar

c++ - 返回类型不完整的调用方法和我无法解释的模板解决方法

Console() 中的 java.lang.System 错误

java - java(eclipse编辑器)中是否有注释一个方法,以便调试器始终跳过它

'Graph' 错误的冲突类型

sql - 将其他表中的数据插入到仅包含主键的表中

java - Jackson:简单的映射