在NetBeans中获取当前打开的项目的文件路径的正确方法

时间:2012-02-24 10:10:52

标签: java plugins netbeans

在NetBeans中,我想获得正确的方法来获取当前打开的项目的文件路径。我需要它来创建NetBeans插件。我需要通过查询或在命令提示符下使用任何命令来获取路径。

2 个答案:

答案 0 :(得分:2)

我认为你要找的是org.netbeans.api.project.ui.OpenProjects

请注意,一次可以打开多个项目,并且还可以阅读OpenProjects文档中的“警告”部分以了解其他方法。

答案 1 :(得分:0)

如果您要查找文件路径,请使用以下命令:

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);设置项目后,我会检查它是否为null,如果是,请使用上面的第一个代码块来获取当前文件路径。