2009-06-10 26 views

回答

9

没有,没有,你不能让一个要么走出独立SWT分布。这是因为每个操作系统/窗口系统/体系结构组合都有自己的每个SWT类的实现。例如,如果您的代码引用org.eclipse.swt.widgets.Button,则JVM无法知道您是否需要该类的win32,Mac/Carbon或Mac/Cocoa实现。

你可以想象通过编写一个加载器类来完成这个工作,该类可以计算平台,体系结构和窗口系统,然后加载正确的JAR。或者,使用equinox构建您的应用程序,并且它可以自动为您加载正确的SWT插件。但是你不能用任何未经修改的SWT分发来完成。

+0

这是一个比我更详细的答案;)+1 – VonC 2009-06-11 05:32:15

+0

我担心它会来上课加载黑魔法。 ;) 谢谢你的提示。 – 2009-06-11 11:30:31

+0

这里有一个代码片段可能有所帮助:http://stackoverflow.com/questions/2706222/create-cross-platform-java-swt-application/3204032#3204032 – 2010-07-23 14:00:30

相关问题