У меня возникают проблемы с запуском любого приложения на моем компьютере для разработки, которое использует объект Swing JFileChooser. Когда я первоначально разработал приложение и протестировал его, окно выбора файлов открылось, и все было в порядке, но через неделю я снова попытался запустить приложение, и ничего не отображалось.
Сначала я подумал, что это проблема многопоточности (в моем исходном приложении использовалась небольшая многопоточность), поэтому я справился и вставил следующий код (я получил код из Интернета), чтобы проверить его:
package com.kwm.util.test;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
final JFrame frame = new JFrame("JFileChooser Demo");
final JFileChooser fc = new JFileChooser();
fc.setMultiSelectionEnabled(true);
fc.setCurrentDirectory(new File("C:\\tmp"));
JButton btn1 = new JButton("Show Dialog");
btn1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fc.showDialog(frame, "Choose");
}
});
JButton btn2 = new JButton("Show Open Dialog");
btn2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int retVal = fc.showOpenDialog(frame);
if (retVal == JFileChooser.APPROVE_OPTION) {
File[] selectedfiles = fc.getSelectedFiles();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < selectedfiles.length; i++) {
sb.append(selectedfiles[i].getName() + "\n");
}
JOptionPane.showMessageDialog(frame, sb.toString());
}
}
});
JButton btn3 = new JButton("Show Save Dialog");
btn3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fc.showSaveDialog(frame);
}
});
Container pane = frame.getContentPane();
pane.setLayout(new GridLayout(3, 1, 10, 10));
pane.add(btn1);
pane.add(btn2);
pane.add(btn3);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
frame.setVisible(true);
}
}
И все равно ничего не вижу. Я предполагаю, что у машины есть проблема, но я не могу определить, в чем проблема.
Любая помощь в этом будет принята с благодарностью.
EDIT 1 Версия ОС: Windows Server 2003 Enterprise Version, SP1.
Версия Java: 1.5.0_12 (как JDK, так и JRE)
Я также боюсь, что это может быть связано с проблемой сети... JFileChooser ищет сетевой каталог, и DNS может конфликтовать. Есть ли способ проверить это? Может быть, проверить, что JVM регистрирует?