Чем я должен заменить sun.awt.shell.ShellFolder, чтобы не получать предупреждения компиляции?
У меня есть метод, использующий sun.awt.shell.ShellFolder.get("fileChooserComboBoxFolders");
который я хочу заменить (или, если возможно, подавить предупреждение). Могу ли я заменить его на что-либо, не являющееся собственностью Sun, чтобы оно не выдавало предупреждения о некоторых возможных удалениях?
-
ОБНОВЛЕНИЕ: не уверен, нужен ли код вообще. Это в устаревшем коде, и меня попросили удалить все предупреждения компиляции. Особенность ShellFolder заключается в следующем:
new Thread {
public void run() {
ShellFolder.get("fileChooserComboBoxFolders");
}
}.start();
-
ОБНОВЛЕНИЕ № 2 о том, почему это было необходимо: JFileChooser все еще немного глючит.
3 ответа
Единственное решение, чтобы избежать этого предупреждения, это не использовать sun.awt.shell.ShellFolder.get
AFAIK он выбирает корневые каталоги файловой системы (Windows: буквы дисков), ничего не делая с ними. Это может занять некоторое время, следовательно, это может ускорить медлительность JFileChooser в более старых версиях Java. Так что убери.
Вы можете подавить предупреждения с помощью @SuppressWarnings("all")
перед тем методом, который вы хотите:
new Thread {
@SuppressWarnings("all")
public void run() {
ShellFolder.get("fileChooserComboBoxFolders"); //No warnings.
}
}.start();