Eclipse3.2和VE插件安装实战攻略
早就听说Eclipse的鼎鼎大名并且领教过了其强大功能,浏览了好多关于Eclipse的文章,听说用SWT,JFace能设计出拥有本地操作系统界面风格的东东,如果在XP上运行,岂不是很让客户满意,近期想要做个桌面系统,, 想试一下. 用Eclipse当然就要装上再说,这两天我是吃劲了苦头..., 下载了很多东西,读了很多文章,终于调通了,现在给大家分享下.我没有找到完整的安装攻略,现在就写一个最新的..... <o:p></o:p>
建议您先浏览下Eclipse网站 http://www.eclipse.org尤其是 Projects 连接, 其中的Eclipse Project, 和 Eclipse Tools Project. Eclipse (Eclipse SDK 最新的是3.2) 是一个平台,其中的JDT,PDE都是集成在Eclipse下载的,SWT,JFace开发包也是,不用关心太多,有些文章说的很多,反而让新手迷惑。<o:p></o:p>
Eclipse Tool Project 主要用到Graphical Editor Framework (GEF) Project, EMF, VE 不要急于下载这些东东,我算是吃劲苦头...... 用Eclipse当然希望用它的可视化编程(Visual Edit Project) 插件. 现在最新的是 VE<st1:chsdate isrocdate="False" month="12" day="30" islunardate="False" w:st="on" year="1899">1.2.0</st1:chsdate>下载页 http://www.eclipse.org/vep/现看它的下载要求! 因为VE只能和相应版本的GEF,EMF,Eclipse SDK一起工作。<o:p></o:p>
好了,攻略开始.建个下载文件夹. 下载VE(<st1:chsdate isrocdate="False" month="12" day="30" islunardate="False" w:st="on" year="1899">1.2.0</st1:chsdate>) 在同一个页面的需求里下载 Eclipse SDK 3.2, EMF 2.2.0 , GEF 3.2 <o:p></o:p>
下载的文件名称分别为:<o:p></o:p>
eclipse-SDK-3.2-win32 <o:p></o:p>
emf-sdo-runtime-<st1:chsdate isrocdate="False" month="12" day="30" islunardate="False" w:st="on" year="1899">2.2.0</st1:chsdate><o:p></o:p>
GEF-runtime-3.2<o:p></o:p>
VE-runtime-1.2<o:p></o:p>
VE-SDK-1.2<o:p></o:p>
可以在如下地址下载:<o:p></o:p>
http://download.eclipse.org/tools/ve/downloads/drops/R-1.2-200606280938/index.html <o:p></o:p>
<o:p> </o:p>
eclipse-SDK-3.2-win32 下载地址:<o:p></o:p>
emf-sdo-runtime-<st1:chsdate isrocdate="False" month="12" day="30" islunardate="False" w:st="on" year="1899">2.2.0</st1:chsdate> 下载地址:<o:p></o:p>
GEF-runtime-3.2 下载地址:<o:p></o:p>
VE-runtime-1.2 下载地址:<o:p></o:p>
VE-SDK-1.2 下载地址:<o:p></o:p>
解压缩Eclipse SDK 3.2, 把解压缩里的 eclipse 文件夹拷贝到F:\hongjun 看看里边的内容,主要是plugins,features 等,解压缩 emf-sdo-runtime-<st1:chsdate isrocdate="False" month="12" day="30" islunardate="False" w:st="on" year="1899">2.2.0</st1:chsdate><o:p></o:p>
到F:\hongjun\emf 文件夹, GEF-runtime-3.2到F:\hongjun\gef,VE-runtime-1.2到F:\hongjun\veruntime,,VE-SDK-1.2到F:\hongjun\ve。在eclipse的links文件夹下(我的是在F:\hongjun\eclipse\links)建立一个ve.start文本文件,输入内容:path=F:\\hongjun\\ve<o:p></o:p>
path=F:\\hongjun\\gef<o:p></o:p>
path=F:\\hongjun\\emf<o:p></o:p>
path=F:\\hongjun\\veruntime<o:p></o:p>
保存完毕。<o:p></o:p>
Eclipse 3.2 需要 JDK<st1:chsdate isrocdate="False" month="12" day="30" islunardate="False" w:st="on" year="1899">1.4.2</st1:chsdate>及以上版本, 所以要先安装它.JDK的路径设置就不再说了...\bin, \lib , \jdk1.4.2 <o:p></o:p>
由于运行SWT的程序用到本地库,所以应该导入SWT的原生包 , 运行程序可以自动找到. 这些问题都困扰了我好长时间. 现在启动F:\hongjun\eclipse.exe,都OK了 eclipse 能自动认出你的JRE. <o:p></o:p>
实战! 启动eclipse,看看MyProject 吧,不错... 界面很迷人! 新建一个项目 file->New->project 出来项目向导, 选择java project. ->next 输入project Name: MyProject , Eclipse自动给你建个workspace 工作文件夹,你的项目都存在这里的,F:\hongjun\eclipse\workspace 点击结束. 一个新项目建成了. 添加SWT ToolKit, 菜单Project->Properties 选择左侧的 Java Build Path 选择 右侧的 Libraries 标签页, 点击 Add Library 按钮, 选择 Standard Widget Toolkit(SWT) 点击 Next , 选上 Include support for JFace library 结束.这样就可以使用 SWT Jface控件了. 选中你的project MyProject. 选择新建图标按钮, 上端最左侧的. 选择 Visual Class ,点击Next , Source Folder 是缺省的 project folder, package 填入 lihongjun, Name 填入 Hello , 展开左侧的 SWT 选择 Shell, 勾选上 public static void main(String[] args), Constructors from superclass, Inherited abstract methods. 结束.<o:p></o:p>
Eclipse 自动启动 VE.... 看看那些窗口... 比较熟悉.. 出现了可视化编辑窗口. 鼠标移到右侧的Palette(竖着的那个)把 一个Label,一个Button, 一个TextArea 放到shell上. 选中Label, 在下侧的Properties属性栏可以进行设置, >text 填入Label,选中 Button 在下侧的Properties属性栏可以进行设置, >text 填入Hello everone. 选中 Button 右键, events->Add Events . 选择Mouse ->mouseDoubleClick. 相应的代码自动产生.也可进行其他的风格设置, 但是如果JDK版本不对则不能操作,有错。<o:p></o:p>
全部代码: <o:p></o:p>
package lihongjun; <o:p></o:p>
<o:p> </o:p>
import org.eclipse.swt.layout.GridLayout; <o:p></o:p>
import org.eclipse.swt.graphics.Point; <o:p></o:p>
import org.eclipse.swt.widgets.Shell; <o:p></o:p>
import org.eclipse.swt.widgets.Display; <o:p></o:p>
import org.eclipse.swt.widgets.Label; <o:p></o:p>
import org.eclipse.swt.SWT; <o:p></o:p>
import org.eclipse.swt.widgets.Button; <o:p></o:p>
import org.eclipse.swt.widgets.Text; <o:p></o:p>
<o:p> </o:p>
public class Hello { <o:p></o:p>
<o:p> </o:p>
private Shell sShell = null ; <o:p></o:p>
private Label 标签 = null ; <o:p></o:p>
private Button button = null ; <o:p></o:p>
private Text textArea = null ; <o:p></o:p>
<o:p> </o:p>
public Hello() { <o:p></o:p>
// TODO Auto-generated constructor stub <o:p></o:p>
} <o:p></o:p>
<o:p> </o:p>
/** <o:p></o:p>
* @param args <o:p></o:p>
*/ <o:p></o:p>
public static void main(String[] args) { <o:p></o:p>
// TODO Auto-generated method stub <o:p></o:p>
/* Before this is run, be sure to set up the launch configuration (Arguments->VM Arguments) <o:p></o:p>
* for the correct SWT library path in order to run with the SWT dlls. <o:p></o:p>
* The dlls are located in the SWT plugin jar. <o:p></o:p>
* For example, on Windows the Eclipse SWT 3.1 plugin jar is: <o:p></o:p>
* installation_directory\plugins\org.eclipse.swt.win32_<st1:chsdate isrocdate="False" month="12" day="30" islunardate="False" w:st="on" year="1899">3.1.0</st1:chsdate>.jar <o:p></o:p>
*/ <o:p></o:p>
Display display = Display.getDefault(); <o:p></o:p>
Hello thisClass = new Hello(); <o:p></o:p>
thisClass.createSShell(); <o:p></o:p>
thisClass. sShell .open(); <o:p></o:p>
<o:p> </o:p>
while (!thisClass. sShell .isDisposed()) { <o:p></o:p>
if (!display.readAndDispatch()) <o:p></o:p>
display.sleep(); <o:p></o:p>
} <o:p></o:p>
display.dispose(); <o:p></o:p>
} <o:p></o:p>
<o:p> </o:p>
/** <o:p></o:p>
* This method initializes sShell <o:p></o:p>
*/ <o:p></o:p>
private void createSShell() { <o:p></o:p>
GridLayout gridLayout = new GridLayout(); <o:p></o:p>
gridLayout. numColumns = 1; <o:p></o:p>
sShell = new Shell(); <o:p></o:p>
sShell .setText( "Shell" ); <o:p></o:p>
sShell .setLayout(gridLayout); <o:p></o:p>
sShell .setSize(