我有一个插件,它在运行时使用一些纯文本和二进制文件。
这是因为插件正在使用一些第三方代码,其工作方式与传统应用程序相同,即从应用程序目录中获取数据。
当我从 Eclipse 中运行插件时,这些数据只是位于项目目录中的某些文件夹中。
为了访问这些数据,我使用了类似的代码
public static final String CorePropertiesPath = "conf/core.xml";
public static URL CorePropertiesURL;
//...
Bundle bundle = Platform.getBundle(ID);
CorePropertiesURL = bundle.getEntry(CorePropertiesPath);
try {
CorePropertiesURL = FileLocator.resolve(CorePropertiesURL);
} catch (IOException e) {
e.printStackTrace();
}
即要从项目目录中的“core/core.xml”文件中访问数据,我首先使用 getEntry()
方法进行转换,然后使用 resolve()
方法进行转换。
这很有效。
但是当开始创建产品时,我发现我的文件(例如“core/core.xml”)在目标目录中不存在。也许它们应该驻留在我的捆绑 jar 中,但它们不在那里。
如何强制他们到指定地点?
最佳答案
检查 build.properties 文件(您可以在 list 编辑器的“构建”选项卡上编辑它)。添加
Eclipse-BundleShape: dir
如果您想为您的包生成一个目录而不是 jar,请在 MANIFEST.MF 中。
关于java - 如何将纯文件和文件夹包含到 Eclipse 产品/插件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22483728/