Java 在安装Eclipse RCP时解开捆绑包NativeCode

Java 在安装Eclipse RCP时解开捆绑包NativeCode,java,osgi,eclipse-rcp,Java,Osgi,Eclipse Rcp,动态库可以包含在Eclipse插件中,使用MANIFEST.MF中的Bundle NativeCode引用,并在运行时自动提取到临时的、用户可写的位置 在运行时将可执行代码复制到用户可写位置存在一些安全问题 是否有办法将已解压的DLL与应用程序一起安装,并使用这些已安装的解压DLL? 有没有一种方法可以做到这一点,而不必将包含DLL的每个捆绑包解压安装?我认为使用捆绑包NativeCode无法做到这一点 您可以执行类似SWT代码的操作,该代码使用System.loadLibrary 您可以使用f

动态库可以包含在Eclipse插件中,使用MANIFEST.MF中的Bundle NativeCode引用,并在运行时自动提取到临时的、用户可写的位置

在运行时将可执行代码复制到用户可写位置存在一些安全问题

是否有办法将已解压的DLL与应用程序一起安装,并使用这些已安装的解压DLL?


有没有一种方法可以做到这一点,而不必将包含DLL的每个捆绑包解压安装?

我认为使用捆绑包NativeCode无法做到这一点

您可以执行类似SWT代码的操作,该代码使用
System.loadLibrary


您可以使用feature
build.properties
中的
root
指令将库包含在RCP安装的目录中。您的插件可以使用
Platform.getInstallLocation
查找安装位置。

我为自己的一些插件这样做。但我有一些第三方插件,其中包括使用Bundle NativeCode引用的DLL。