当我编译,javac的输出:
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.`
我希望禁止这种警告。 试图-Xlint:无似乎并没有帮助。
当我编译,javac的输出:
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.`
我希望禁止这种警告。 试图-Xlint:无似乎并没有帮助。
从我可以在文档中告诉,你不能做它的命令行。
按照javac
文档 ,-Xlint:无只禁止警告“不是由Java语言规范规定”。 看来,警告您使用弃用API的是由语言规范管理。
你最好的办法是解决使用过时的API。 然而,一个选项是将添加@SuppressWarnings("deprecation")
注释到使用失效API的类或方法。
两种可能的方法:
@SuppressWarnings("deprecation")
而在其他一些谷歌搜索这个问题,偶然发现了这个线程像我一样...
尝试:-Xlint:-deprecation
这似乎在JDK 6工作...不知道其他人。
随着Java 6中,无论是@Depreated注解,也不是comiler标志将帮助你在这里。 这工作对我来说唯一的解决办法是把与@deprecated(小盘股),一个javadoc注释标记的方法已过时:
/**
* @deprecated overriding deprecated method
*/
@Override
public javax.xml.bind.Validator createValidator() throws JAXBException {...}
(该例子是从不同于JAXBContext而派生的类。)
(我没有进口过时的验证类,以避免import语句的警告。)
当使用gradle这个你可以很容易地对其进行配置:
tasks.withType(JavaCompile) {
options.deprecation = false
}
(具有摇篮2和Java 8测试)
如果它是一个核心的Java API,几乎肯定是一个替代品,会做你想要什么。 运行带有额外参数的javac,再看看API已过时的方法,并在适当更换。
@SuppressWarnings("deprecation")
工作不适合我,而不是我用
@SuppressWarnings("unchecked")
使用nowarn属性见下文
如
<javac srcdir="src"
destdir="build/classes" source="1.6"
target="1.6" debug="true" encoding="Cp1252"
nowarn="on">
默认情况下nowarn属性是关闭
如果您在命令行编译您可以筛选邮件grep
,只是筛选出具有不必要的内容,例如像消息grep -v deprecated
。 您可以使用|
将输出发送到grep,
your compile command | grep -v deprecated