gpt4 book ai didi

javac 忽略@SuppressWarnings ("all")

转载 作者:搜寻专家 更新时间:2023-11-01 00:57:30 26 4
gpt4 key购买 nike

我目前有一个枚举,它有一个可以接受 null 并包含以下 SuppressWarning 注释的构造函数:

@SuppressWarnings("all")
public enum TheEnum {
...
AN_ENUM_VALUE(null),
...
...
private TheEnum(TheEnum ... args) {
if (args != null){
...
...
}
...
}

我目前正在使用 MyEclipse Workbench 10.6,它似乎可以很好地提取注释。然而,在开发机器上编译期间,我收到与“TheEnum”类相关的警告。

奇怪的是,在项目中,到处都是@SuppressWarnings("unchecked"),编译器设法拾取这些并忽略它们就好了。

由于遗留问题,我们必须使用 JDK 1.5.0_17 来编译,但看起来它应该选择“全部”抑制:

[root@xxx]:/opt/jdk1.5.0_17/bin# ./javac -X
...
-Xlint:{all,deprecation,unchecked,fallthrough,path,serial,finally,-deprecation,- unchecked,-fallthrough,-path,-serial,-finally}Enable or disable specific warnings

关于我应该在哪里查看为什么“全部”被忽略的任何建议?

最佳答案

首先不要使用它。

@SuppressWarnings("all")

说,你做错了什么。我会尽快取消与任何开发此类代码的开发人员的契约(Contract)。警告的存在是有原因的,并且一概忽略说“我不在乎我的代码是否真的有效”,就像其他任何东西一样。这与编写单元测试完全相反:全面禁用编译器检查。

http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/javac.html#options来看“全部”可能是 eclipse 扩展。 Sun/Oracle Java 6 编译器可能只支持以下值:uncheckedpathserialfinallyfallthroughdeprecation

关于javac 忽略@SuppressWarnings ("all"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13729840/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com