javac 错误“错误:发现警告并指定了 -Werror”在 ant 中禁用“-Werror”

CQM*_*CQM 5 ant android javac build-server adb

这是一个 android 项目,当我的 ant 构建脚本决定在运行程序时将警告视为错误时,它有时会失败javac。说真的,它只是有时这样做,这是我可能会问的另一个问题。

它将打印错误并突然取消构建

[javac] 1 error

[javac] 9 warnings
Run Code Online (Sandbox Code Playgroud)

当我更深入地了解时,我发现“错误”是

error: warnings found and -Werror specified
Run Code Online (Sandbox Code Playgroud)

这不是我明确设置的。现在,这可能是一个埋藏在 build.xml 文件深处的参数,或者可能是在我目前不知道的一种特定条件下这个特定子库的 build.xml 文件中的参数

有时,这是 android facebook sdk 造成的。但是 ant build.xml 文件中没有 Werror 参数,但我想禁用它或解决它

这是针对构建服务器的,我有其他条件来停止构建。不一致的 ant 和 javac 问题确实没有存在的空间。

但任何有关它的见解都会受到赞赏。

小智 2

我的 Android SDK 目录下的文件“tools/ant/build.xml”包含以下内容:

<property name="java.compilerargs" value="" />
Run Code Online (Sandbox Code Playgroud)

也许由于警告被视为错误而导致构建失败的 Android SDK 在编译器参数中包含“-Werror”?(如果不是,在有问题的 Android SDK 实例的目录中对“compilerargs”进行递归 grep 可以找到罪魁祸首。)

更新:

另一方面,在我的 Android SDK 中,该属性本身并不是强制性的——它只是碰巧在这里使用:

<property name="java.compilerargs" value="" />
Run Code Online (Sandbox Code Playgroud)

必须存在的元素是倒数第二行的“compilerarg”元素,因此使用 grep 查找“compilerarg”而不是“compilerargs”将是更好的选择。