Java - 解决WindowPeer警告

时间:2012-07-17 18:00:38

标签: java warnings

当我编译我的下面的java代码时,

Window w = c instanceof Window ? (Window) c : SwingUtilities.getWindowAncestor(c);
WindowPeer peer = (WindowPeer) w.getPeer();

我收到以下警告信息:

warning: WindowPeer is internal proprietary API and may be removed in a future release

知道如何解决这个问题吗? 我使用的是JDK 1.6,我也试过1.7。

1 个答案:

答案 0 :(得分:0)

以下是两种抑制警告的方法。 但是,建议不要禁止警告,并且警告消息文本会告诉您原因。

方法#1(最简单的)是运行

javac -XDignore.symbol.file ...

将根据Sun的内部rt.jar编译您的程序,而不是面向公众的符号文件ct.sym

方法#2a是运行

javac -XDenableSunApiLintControl -Xlint:-sunapi ...

这仍然会发出“注释”但不是警告。

方法#2b是通过写

来抑制警告和注释
@SuppressWarnings("sunapi")

在源代码中,但这仍然要求您按如下方式运行javac:

javac -XDenableSunApiLintControl ...