【发布时间】:2012-02-24 10:10:52
【问题描述】:
在 NetBeans 中,我想获得正确的方法来获取当前打开的项目的文件路径。我需要它来创建 NetBeans 插件。我需要通过查询或使用命令提示符中的任何命令来获取路径。
【问题讨论】:
在 NetBeans 中,我想获得正确的方法来获取当前打开的项目的文件路径。我需要它来创建 NetBeans 插件。我需要通过查询或使用命令提示符中的任何命令来获取路径。
【问题讨论】:
我想你要找的是org.netbeans.api.project.ui.OpenProjects。
请注意,一次可以打开多个项目,并阅读OpenProjects 文档中的“警告”部分以了解替代方法。
【讨论】:
如果您正在寻找文件路径,请使用:
TopComponent activeTC = TopComponent.getRegistry().getActivated();
DataObject dataLookup = activeTC.getLookup().lookup(DataObject.class);
String filePath = FileUtil.toFile(dataLookup.getPrimaryFile()).getAbsolutePath();
这将为您提供当前所选文件的路径。
如果要获取主项目的路径,可以使用这个:(摘自答案here)
Lookup lookup = Utilities.actionsGlobalContext();
Project project = lookup.lookup(Project.class);
FileObject projectDir = project.getProjectDirectory();
String projectLocation = projectDir.getPath();
使用它的问题是,除非您在运行此代码之前明确选择了给定项目,否则它不会将任何项目视为主项目。
因此,在用Project project = lookup.lookup(Project.class);设置项目后,我会检查它是否为空,如果是,则使用上面的第一个代码块来获取当前文件路径。
【讨论】: