Java 如何从Eclipse插件获取PackageExplorer中所选节点的完整路径?
我试图在PackageExplorer中获取所选节点的完整路径,该节点是一个文件夹或包,而不是Eclipse Ganymede插件中的文件。我尝试了第页提到的方法,但每当我在代码中使用以下行时 IFile file=(IFile)structured.getFirstElement();(这个) IPath path=file.getLocation() 插件不工作,不响应,也不会给出异常警告。当我将IFile声明更改为Object声明时,一切正常。但我需要获取文件或文件夹以获取操作的完整路径Java 如何从Eclipse插件获取PackageExplorer中所选节点的完整路径?,java,eclipse,plugins,Java,Eclipse,Plugins,我试图在PackageExplorer中获取所选节点的完整路径,该节点是一个文件夹或包,而不是Eclipse Ganymede插件中的文件。我尝试了第页提到的方法,但每当我在代码中使用以下行时 IFile file=(IFile)structured.getFirstElement();(这个) IPath path=file.getLocation() 插件不工作,不响应,也不会给出异常警告。当我将IFile声明更改为Object声明时,一切正常。但我需要获取文件或文件夹以获取操作的完整路径
任何帮助都将不胜感激……可能是您应该调试代码并检查选择的第一个元素的实际类型 在使用-consolelog选项进行测试时,还应该启动第二个eclipse实例,以便将错误日志重定向到控制台。
(有关错误日志的信息,如果您使用eclipse启动配置从SDK eclipse运行应用程序,您必须检查第二个实例的错误日志以查看错误,而不是第一个eclipse实例的错误日志…我习惯于看到人们混淆这一点)我发现了这个问题。我使用IJavaElement而不是IFile。我通过使用 IPackageFragmentRoot a=(IPackageFragmentRoot)b.getParent(); IJavaElement[]c=a.getChildren() 。在此之前,我将org.eclipse.jdt.core.dom的导入包添加到插件的依赖项中。现在,我可以获取每个IJavaElement的完整路径,无论它是文件还是文件夹。您所说的“当我将IFile声明更改为Object声明时,一切正常”是什么意思??这意味着它不适合我的演员。