【发布时间】:2017-08-16 14:57:05
【问题描述】:
我正在尝试基于此tutorial 实施一种新型项目。问题是我希望将我的项目保存为具有自定义扩展名的单个文件,因此所有内容都必须驻留在该文件中。像 project_name.cep (cep - 自定义扩展项目)。我不想在项目中打开一种新类型的文件,该文件是我的项目,我想在其中写入节点。
这是要使用的 ProjectFactory 示例:
@ServiceProvider(service=ProjectFactory.class)
public class CustomProjectFactory implements ProjectFactory{
public static final String PROJECT_EXT = "cep";
//Specifies when a project is a project, i.e.,
@Override
public boolean isProject(FileObject projectDirectory) {
return PROJECT_EXT.equals(projectDirectory.getExt()); //assuming that getExt() give the file extension
}
//Specifies when the project will be opened, i.e., if the project exists:
@Override
public Project loadProject(FileObject dir, ProjectState state) throws IOException {
return isProject(dir) ? new CustomProject(dir, state) : null;
}
@Override
public void saveProject(final Project project) throws IOException, ClassCastException {
// leave unimplemented for the moment
}
}
问题是我试图打开项目时打开的 FileChooser 似乎是一个 DIRECTORIES_ONLY 选择器,因此无法打开单个文件。
可以吗?我真的很感激一些如何做到这一点的例子,如果不问如何在这个单个文件中编写节点并在资源管理器中表示它(只是一些建议)。
【问题讨论】:
标签: java netbeans netbeans-8 netbeans-platform