如何在Eclipse中将String转换为IWorkspace?

时间:2016-03-01 17:43:58

标签: java eclipse string

我正在创建一个插件项目来分析Eclipse工作区中的java项目。我希望通过另一种方式获取Eclipse工作区的当前位置。而不是使用IWorkspace workspace = ResourcesPlugin.getWorkspace();但我想使用此代码获取日食工作区的位置:
URL location = Current_class.class.getProtectionDomain().getCodeSource().getLocation(); String workspaceLoc = ordinalIndexOf(location.getFile());

我必须以某种方式将String转换为IWorkSpace对象。我尝试使用此代码。

fileUrl = FileLocator.toFileURL(new URL(workspaceLoc)); 
 IWorkspace workspace =(IWorkspace)fileUrl;

但是有错误。

Cannot cast from URL to IWorkspace

任何人都可以就如何做到这一点提出建议吗?我真的很困惑。

1 个答案:

答案 0 :(得分:0)

你不能这样做。 IWorkspace对象是在Eclipse启动期间创建的,不能以任何其他方式创建。

Platform.getInstanceLocation()方法为您提供当前工作空间的位置。

请注意,当您使用“Run as Eclipse Application”来测试插件时,会启动一个使用新工作区的Eclipse新实例。访问开发工作区的唯一方法是将插件安装到主Eclipse安装中。您应该在测试工作区中创建项目以使用。

进行测试