我有一个Eclipse RCP应用程序,其中包含应用程序的bundle类路径中的库。 MANIFEST.MF看起来像这样:
...
Bundle-ClassPath: .,
libs/commons-io-2.4.jar,
libs/gson-2.3.1.jar,
libs/log4j-1.2.17.jar,
libs/slf4j-api-1.7.10.jar,
libs/slf4j-log4j12-1.7.10.jar
...
当应用程序启动时(作为Eclipse外部的导出产品),这些库将被复制到文件夹configuration/org.eclipse.osgi/13/0/.cp/libs
中。查看文件属性似乎这是在每个应用程序启动(?)时完成的。这种行为是否在某处记录并且可以受到影响(例如,定义从中加载这些库的自定义文件夹)?
答案 0 :(得分:1)
将插件打包为Jar时即可完成此操作。如有必要,Eclipse-BundleShape: dir
会暂时将jar解包到此位置。
您可以指定将插件打包为目录,以便使用
不会发生这种情况unpack
作为MANIFEST.MF中的条目(请参阅Eclipse help)
注意:如果您使用功能构建RCP,则会被feature.xml中plugin
条目的{{1}}选项覆盖