eclipse在哪里在插件中寻找二进制库?

问题描述

| 我有一个eclipse插件(由第三方开发,没有可用的源代码),它使用二进制库来完成某些工作。该库是开源的。分布式插件仅包含Windows的二进制文件,但我可以轻松地将其编译为其他平台。我不知道要在哪里放置库,以便将其拿起。我目前正在使用OS X,但Linux也是一个问题。 Windows库位于eclipse / plugins / plugin_name / os / win32 / x86中。我已经尝试使用os / macosx / x86_64(与org.eclipse.osgi.service.environments中的常量相对应)和许多其他变体,但没有任何效果,而且我找不到任何有关如何eclipse设置库路径。 我应该在哪里将库放在插件子目录中,以便Eclipse将它们加载到适当的平台上?     

解决方法

        二进制库(例如* .dll)可以捆绑在插件JAR本身中。在这种情况下,它可能位于/os/win32/x86/thelib.dll中。 如果您可以在第三方插件中编辑META-INF / MANIFEST.MF(解压缩jar文件),请检查标题\“ Bundle-NativeCode \”。例如:
Bundle-NativeCode: /os/win32/x86;osname=win32;processor=x86
然后,您可以通过以下方式为OS X添加路径:
Bundle-NativeCode: /os/win32/x86;osname=win32;processor=x86,/os/osx/x86; osname=macosx;processor=x86
将OS X库放到相应的文件夹中,将jar重新压缩,就可以完成了!