Eclipse插件:如何强制它使用特定版本的SWT.jar?

Eclipse插件:如何强制它使用特定版本的SWT.jar?,eclipse,eclipse-plugin,swt,Eclipse,Eclipse Plugin,Swt,我的eclipse插件有一个需要SWT3.75M或更高版本的外部库。因此,我将相应的jar文件添加到类路径中。现在,如果我编写一个测试驱动程序来实例化和调用lib的一些类和方法,它可以工作,但是如果我启动整个插件并希望从那里调用相同的方法,它就不能工作,因为SWT低于3.75M 我假设问题是,插件没有使用我的lib文件夹中的SWT(我使用plugin.xml中的适当选项卡将其添加到插件中),而是使用Eclipse安装中的SWT jar。如何避免这种情况?您应该在插件中使用SWT作为捆绑包/插件(

我的eclipse插件有一个需要SWT3.75M或更高版本的外部库。因此,我将相应的jar文件添加到类路径中。现在,如果我编写一个测试驱动程序来实例化和调用lib的一些类和方法,它可以工作,但是如果我启动整个插件并希望从那里调用相同的方法,它就不能工作,因为SWT低于3.75M


我假设问题是,插件没有使用我的lib文件夹中的SWT(我使用plugin.xml中的适当选项卡将其添加到插件中),而是使用Eclipse安装中的SWT jar。如何避免这种情况?

您应该在插件中使用SWT作为捆绑包/插件(而不是将Jar文件放在类路径中)。然后,您可以指定何时引用捆绑包以及所需的最低版本。在引用SWT的插件清单中执行此操作。然后,您需要确保所需的SWT插件在您的目标平台中可用。

好的,谢谢,但是我得到了一个不满意的链接约束。我如何才能真正实现jar可用?您是否确保将其添加到目标平台并重新加载?(确保您在目标平台的文件列表中看到Jar文件)您可能需要使用目录而不是安装来设置目标平台,以便它将拾取所有Jar文件,而不仅仅是安装到安装中的Jar文件。我尝试将Jar文件添加到目标平台,但我无法添加一个。每当我添加jar所在的文件夹时,它只显示一个空文件夹。在我的目标平台中,在“目标内容”对话框的“位置”选项卡中,我单击“添加”,选择目录,然后单击“浏览”按钮选择包含jar的文件夹,然后它们出现。我也这样做了,但看不到它们。