我有一种打开 JFileChooser 并选择文件的方法。当调用 showOpenDialog 方法时,我得到一个异常,但是即使对话框打开,我也可以选择一个文件,然后继续执行程序(尽管除非我调用 System.exit(0), 最后,JVM不会停止运行。
public static File selectFile() {
JFileChooser fc = new JFileChooser(Paths.get("").toAbsolutePath().toFile());
if(fc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { //Exception on This Line!!
return fc.getSelectedFile();
} else return null;
}
异常看起来像这样:
Exception in thread "EventQueueMonitor-ComponentEvtDispatch" java.lang.UnsatisfiedLinkError: no EnJavaJni in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.encentuate.JNICall.<clinit>(JNICall.java:67)
at com.encentuate.EncentuateAWTHook.guiInitialized(EncentuateAWTHook.java:41)
at com.sun.java.accessibility.util.EventQueueMonitor.maybeNotifyAssistiveTechnologies(EventQueueMonitor.java:228)
at com.sun.java.accessibility.util.ComponentEvtDispatchThread.run(EventQueueMonitor.java:631)
我不太了解问题所在。根据我在Google上的发现,它与调用无法找到的本机函数的方法有关,但是除了抛出异常之外,它仍然可以按“预期”的方式工作。
有关此问题的任何线索吗?
编辑:我的主要问题是程序即使完成也不会停止执行。如果可以解决,那么继续打印异常消息就不是什么大问题
答案 0 :(得分:0)
这段代码似乎对我有用。我可以问你从哪里打电话吗?您在什么操作系统上?