转自:http://blog.youkuaiyun.com/zjuylok/archive/2010/06/02/5643498.aspx
Eclipse配置SWT软件开发环境
软件准备
Eclipse Java 开发环境: Eclipse IDE for Java Developers
http://www.eclipse.org/downloads/
SWT 软件包: swt-3.5.2-win32-win32-x86.zip
JFace 软件包:一般 Eclipse 的 IDE 文件 plugins 目录中会有相应的版本,如果下载 Eclipse for RCP/Plug-in Developers 版本则包括 Jface 的 JAR 以及源代码。
SWTDesigner 或者 WindowBuilder :
http://www.instantiations.com/windowbuilder/pro/download.html?id=1
安装
A. 解压缩后如下图所示,包含 swt 和 swt-debug 的 jar 文件,同时包含源代码压缩文件 src.zip
把这三个文件都拷贝进入 ecliplse 下 plugins 目录 .
测试
A. 打开 eclipse IDE ,新建一个 Java Project ,命名 SWTTest
B. 新建 SWTTest 类,默认包,然后输入如下代码:
import org.eclipse .swt.SWT;
import org.eclipse .swt.graphics.Color;
import org.eclipse .swt.layout.FillLayout;
import org.eclipse .swt.widgets.Display;
import org.eclipse .swt.widgets.Label;
import org.eclipse .swt.widgets.Shell;
public class SWTTest {
public static void main(String[] args) {
Display display = new Display ();
Shell shell = new Shell (display);
shell.setText( " Hello World " );
shell.setBounds(100, 100, 200, 50);
shell.setLayout( new FillLayout ());
Label label = new Label (shell, SWT .CENTER);
label.setText( " Hello World " );
Color red = new Color (display, 255, 0, 0);
label.setForeground(red);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
red.dispose();
display.dispose();
}
}
Eclipse 会提示许多错误,那是因为尚未把SWT 的JAR 放入的工程的编译路径中
C. 添加 SWT 的 JAR 文件到工程的编辑路径中
在工程属性中 Java Build Path 中,选择 Library ,选择 Add external JARs ,通过绝对路径来添加额外的 JAR 文件,并通过绝对路径把 JAR 文件与其源代码、文档等进行关联。
关联 JAR 文件与源代码、文档等
或者通过相对路径的形式,首先在选择 Add Variable ,首先添加 Eclipse 的安装路径,然后通过 eclipse 的安装路径宏变量,来定义 SWT 的 JAR 文件的位置。
通过 ECLIPSE_HOME 宏来定义 JAR 文件路径,以及对应的源代码、文档等,选择 Add Variable ,然后 Extend ……
运行
在代码编辑过程中,可以通过 F2 查看相应的 SWT 的源代码:
图形界面辅助工具
A . WindowBuilder 或者 SWTDesigner
下载软件后,解压缩可以看到文件目录下是个 eclipse 目录, eclipse 下是 plugins 和 features 文件夹, SWTDesigner 是作为 eclipse 的插件进行安装的,因此,可以通过 link 的方式安装。
或者把这些 plugins 和 features 目录下的内容,分别拷贝到 eclipse 对应的文件夹中。 SWTDesigner 的安装,需要 PDE 的支持,因此首先把 Eclipse IDE for Java Developers 版本,更新安装 PDE ( Plug-in Development Environment ), WindowBuilder 依赖此运行。
Help-Install New Software , Galileo - http://download.eclipse.org/releases/galileo ,用 plug 做索引词,选中 Eclipse Plug-in Development Environment 。
尝试下载单独的 PDE 插件:
http://download.eclipse.org/eclipse/downloads/drops/R-3.5.2-201002111343/index.php
虽然 PDE 也是 Eclipse 的插件,但是似乎不能使用 link 方式进行安装,只有使用 Install New Software 的方式。如果没有安装 PDE 插件,尽管使用 link 的方式安装了 WindowBuilder ,但是还是看不到 WindowBuilder 对应的菜单。
在之前的 SWTTest 工程中,新建一个 SWTDesigner – JFace – ApplicationWindw ,
在 SWTDesigner 存在的情况下,可以进行图形化环境的 UI 设计:
查看代码发现 eclipse 会提示错误,因为找不到 JFace 的 JAR 文件,需要添加 JFace.jar 以及 JFace 所依赖的 JAR 文件到工程的 Library 路径中。如果只添加了 JFace 的 JAR 文件,而没有添加他所依赖的 JAR 文件,虽然编译能通过,但是程序运行会报错:
选择 Window/Show View/Plug-in Development/Plug-ins. ( 如果没有这个菜单 , 则说明 eclipse 没有正确安装 PDE) ,在 Plug-ins 中找到 JFace,然后右键点击 Open dependencies , 可以看到 JFace 所依赖的 JAR 包,然后分别添加到工程的 Library 路径中。
然后就能正常运行程序:
B . 安装 jigloo 图形设计插件
下载: http://www.cloudgarden.com/jigloo/
以 link 的方式安装插件, jigloo 不依赖 PDE ,不要特别安装 PDE 就能开发图形用户界面,安装成功后, Eclipse 新建菜单中会出现一个新的 GUI Forms 菜单:
同样,添加 jigloo 的 JAR 文件到工程的编译路径,同时添加 jigloo 可能依赖的 JAR 文件, jigloo 的依赖文件比较多,需要都添加到工程的 Library 之中。使用 PDE 工具查看依赖关系,有些已经在工程的默认 JAR 文件之中。
选择 GUI Forms – SWT – SWT Main Application.
运行: