我有一个扩展 AbstractUIPlugin 的插件
package lsclipse;
public class LSclipse extends AbstractUIPlugin {
有了它,我可以使用以下代码获取状态位置目录。
public static final String baseDir = \
lsclipse.LSclipse.getDefault().getStateLocation().toOSString();
这个目录映射到WORKSPACE/.metdata/.plugin/PROJECT
,这很方便
但是使用实现 BundleActivator 的插件
package lsclipse;
public class Activator implements BundleActivator {
我无法获取状态位置()。
我可以使用Platform.getLocation().toFile().toString();
来获取此插件的工作区,但它是WORKSPACE
的基本目录>,而不是WORKSPACE/.metdata/.plugin/PROJECT
。
如何从 Activator 获取状态位置?我的插件是 headless RCP,所以我不想(或不能)继承 AbstarctUIPlugin。
最佳答案
org.eclipse.core.runtime.Platform.java
public static IPath getStateLocation(Bundle bundle)
应该为您提供 bundle 的数据区域。
关于java - 如何在实现BundleActivator的eclipse插件中获取getStateLocation()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14025335/