在我以前的一个Netbeans平台应用程序中,我使用此代码打开了一个保存对话框
File home = new File(System.getProperty("user.dir"));
XMLfile = new org.openide.filesystems.FileChooserBuilder("_output")
.setTitle("Save Dictionary")
.setDefaultWorkingDirectory(home)
.setApproveText("Save")
.setFileFilter(new FileNameExtensionFilter("xml files (*.xml)", "xml"))
.setAcceptAllFileFilterUsed(true)
.showSaveDialog();
出于某种原因,在我目前的Netbeans平台应用中,Netbeans IDE无法找到org.openide.filesystems.FileChooserBuilder
(javadoc)。我的模块声明了对File System API
的依赖,据我所知," import"命名空间org.openide.filesystems
。
我找不到FileChooserBuilder
已被弃用的任何信息,也未找到替换建议。
Netbeans IDE建议改为使用javafx.stage.FileChooser
,但我在new javafx.stage.FileChooser.FileChooser().showSaveDialog(Window ownerWindow)
遇到麻烦,因为我不知道如何从Window
获取TopComponent
。如果我传递null
,则会抛出异常(IllegalStateException: This operation is permitted on the event thread only; currentThread = AWT-EventQueue-0
),可能是因为null
导致非模态对话框。
那么org.openide.filesystems.FileChooserBuilder
消失在哪里,或者我的错误在哪里?
答案 0 :(得分:0)
由于某种原因,它再次起作用。我已经删除了对File System API
的依赖,已经在该项目上工作了几天,并再次添加它。也许我已经清除了Netbeans缓存(在%localappdata%
中)和所有模块的/build
目录。不知道是什么解决了这个问题。