如何将自定义文件夹添加到导出的Eclipse RCP应用程序?

4

我有一个Eclipse应用程序,它从文件夹加载文件。当我导出项目并运行时,该文件夹仅以二进制形式编译到JAR文件中。但是我想在导出后编辑该文件,因此需要将其放在产品目录中而不是JAR文件内部。 该文件夹在build.properties中被检查,这应该是正确的方式,但仍然无法正常工作。 有人知道在哪里配置该文件夹导出为实际文件夹吗? 感谢您的帮助!

2个回答

3
您可以通过功能导出其他文件,并将其作为文件夹添加到根目录。在Eclipse PDE文档中查找rootfolders。您必须在功能的build.properties中使用一些特殊条目,这不能通过PDE UI完成。
话虽如此,在更改这些文件和产品目录可能是一个不好的想法。这会导致大多数多用户和现代操作系统上出现问题。更改应存储在生成它们的插件/OSGI包的数据中。考虑使用此方法:http://www.osgi.org/javadoc/r4v43/core/org/osgi/framework/BundleContext.html#getDataFile(java.lang.String

我想要导出文件夹中的一些文件(而不是JAR包),例如我的log4j.xml,因为这样我可以在产品导出后更改日志记录设置。这更多是为了维护而非提高生产力。 - krabbenmeister

3
如果我理解正确的话,您希望以“未打包”的形式安装插件,而不是以“jar”形式安装。这样,在将插件安装到Eclipse框架时,Eclipse IDE中插件项目的文件夹也将成为“物理”文件夹。
可以通过多种方式实现这一点,但目前最便携的方法似乎是在MANIFEST.MF文件中添加以下行:Eclipse-BundleShape:dir. (一些工具 - 尤其是Tycho - 不理解其他替代方案.)

谢谢!这个解决方案对我很有效。现在可以选择要放入“物理”文件夹的文件,那就更好了。使用您的解决方案,包含该行元数据的完整插件将被导出为文件夹。 - krabbenmeister
在插件中,您可以通过 build.properties 指定包含的文件。通过 PDE 编辑器的“构建”页面很容易编辑此文件。 - Tonny Madsen
太好了!现在我明白了build.properties的用法。我之前选择了错误的文件夹,导致类也被导出到文件夹中。现在它可以正常工作了,我只有一个元数据文件夹和一个类文件的jar包。 - krabbenmeister
Krabbenmeister,您是在说您可以将项目的某些部分以JAR格式导出,而其他部分以文件夹/文件格式导出吗?我使用相同的配置,但所有内容都被导出为文件夹/文件... - marcolopes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接