已弃用的编译错误

14

我正在尝试编译我的Java程序,但是遇到了一个“弃用文件”错误。

通常我通过键入“Javac FileName.java”来编译文件,但是出现以下错误:

FileName.java使用或覆盖了已弃用的API。 重新编译时请使用Xlint-deprecation以获取详细信息。

我应该在命令行中输入什么才能运行它?


请使用Xlint-deprecation重新编译以获取详细信息。 - LionC
1
但是我该如何“使用Xlint-deprecation重新编译”?!- Tom Stock 刚刚编辑 - hunterge
汤姆,你不需要这样做,这只是一个警告。最好在你的IDE中查看已弃用的问题,而不是在这里。简而言之,你仍然会得到一个类文件。检查输出路径,它就在那里。 - Jops
但是为什么它不运行,如果只是一个警告? - hunterge
我刚意识到自己有多愚蠢,谢谢大家。 - hunterge
我希望我回答了你的问题。它 运行,编译器只是想让你知道它发现了一些已弃用的代码。 - Jops
4个回答

16

这不是一个错误,而是一种警告

编译器仍会生成类文件,您可以运行它。然而,最好解决警告,因为使用已弃用的 API 可能会导致以后更多的问题。

如果您想查看警告,可以执行以下操作:

javac -Xlint:deprecation FileName.java

5

如果您没有废弃警告

javac -Xlint Filename.java

虽然这段代码片段可能回答了作者的问题,但您需要稍微扩展一下,并向“-Xlint”关键字添加一些单词和文档。请在这方面编辑您的答案(还要注意,这个问题已经有5年历史,可能已经解决了。在我看来,没有必要回答这样一个已经有几个答案的老问题)。 - hellow

0

我曾经遇到过类似的问题,将路径设置为包含JDK的正确文件即可解决。 对于Windows系统, 搜索环境变量>选择编辑环境变量>输入JAVA_HOME作为变量并将值设置为JDK文件。


0

我在运行gradlew build时遇到了相同的异常。我发现路径中包含Java 1.7,而我的JAVA_HOME变量路径已经指定了1.8。一旦我将路径更新为1.8,构建就成功了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接