3

我有一个需要 DLL 的 Eclipse RCP 插件。

将 DLL 引用添加到 MANIFEST 的推荐最佳做法是什么?DLL 应该放在哪里,推荐的目录名称是什么?

我读过相互矛盾的做法。有些人要求您创建一个包含架构和处理器类型的文件夹,有些人要求您在清单上设置一些平台过滤器......

4

3 回答 3

2

Eclipse 应用程序中最好的方法是使用插件片段。一个标准的 Eclipse 项目(带有 dll)将为所有支持的平台提供多个片段。只有在目标平台(在平台过滤器中指定)时才会激活片段。

来自 eclipse 文档(提供标准的 eclipse 安装)

平台过滤器是一个有效的 LDAP 字符串,必须在正在运行的系统中评估为真,插件才能运行。例如,以下过滤器表明插件设计为仅在具有 win32 窗口系统的平台上运行:Eclipse-PlatformFilter: (ws=win32)。如果用户尝试在不满足此要求的平台上运行 Eclipse,则插件将被运行时静默忽略。

于 2009-09-08T04:48:55.880 回答
1

由于 Eclipse RCP 基于 OSGi,您还可以查看有关处理本机代码的 OSGi 4.1 文档。我相信 Eclipse 人已经开始推荐 OSGi 方法,但我不记得我在哪里看到了推荐。

我使用了 Malaxeur 的建议来使用片段和过滤器。片段/包内的实际布局无关紧要,但lib如果我有多个库,我会创建一个单独的目录。

OSGi 4.1 规范在这里

于 2009-09-09T08:44:27.613 回答
0

我会按照 org.eclipse.swt.win32 片段的示例并将它们捆绑在 jar 的根目录中。

作为参考, SWT 示例文档中有一段描述了如何独立运行示例。

于 2009-08-28T21:59:45.533 回答