Чем я должен заменить 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();
Другие вопросы по тегам