﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>博客园-《Eclipse从入门到精通》</title><link>http://www.cnblogs.com/glchengang/</link><description>作者博客：子在川上曰(http://www.blogjava.net/chengang)</description><language>zh-cn</language><lastBuildDate>Tue, 09 Feb 2010 20:03:21 GMT</lastBuildDate><pubDate>Tue, 09 Feb 2010 20:03:21 GMT</pubDate><ttl>60</ttl><item><title>附录D　手工创建一个SWT项目(完全抛弃SWT Designer)</title><link>http://www.cnblogs.com/glchengang/archive/2006/04/24/383775.html</link><dc:creator>陈刚</dc:creator><author>陈刚</author><pubDate>Mon, 24 Apr 2006 09:45:00 GMT</pubDate><guid>http://www.cnblogs.com/glchengang/archive/2006/04/24/383775.html</guid><description><![CDATA[<p>阅读: 2872 评论: 0 作者: <a href="http://www.cnblogs.com/glchengang/" target="_blank">陈刚</a> 发表于 2006-04-24 17:45 <a href="http://www.cnblogs.com/glchengang/archive/2006/04/24/383775.html" target="_blank">原文链接</a></p><div>
<h1 style="MARGIN: 15.6pt 0cm"><font size=5><span style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">附录</span><span lang=EN-US><font face=Arial>D</font></span><span style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">　手工创建一个</span><span lang=EN-US><font face=Arial>SWT</font></span><span style="FONT-FAMILY: 黑体; mso-ascii-font-family: Arial">项目</span></font></h1>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">　　在</span><span lang=EN-US>SWT/JFace</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">篇，读者来信中反映</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的下载、安装、注册等问题比较多，如果用不了</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，读者们就无法按照书上所示的步骤创建一个</span><span lang=EN-US>SWT</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">项目，也就无法继续学习下面的内容，这引起了不少读者的困扰。<br></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><br>　　这里笔者要强调一点：</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">等</span><span lang=EN-US>UI</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设计工具并非是开发</span><span lang=EN-US>SWT/JFace</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序所必须的，而且本书从第</span><span lang=EN-US>7</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">章起就不再和</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有关系了。笔者现在开发</span><span lang=EN-US>SWT</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序就再也没有用过</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">了，它更多的时候可以做为初学者学习</span><span lang=EN-US>SWT</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的工具，以及开发初期界面布局的辅助设计工具。<br></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><br>　　这里通过附录的方式给出一个不必安装</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，也能轻易创建一个</span><span lang=EN-US>SWT</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">项目的方法，以便无法安装</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的读者，继续学习本书后面的内容。此方法的操作步骤如下：</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第一步：参照第</span><span lang=EN-US>17</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">页第</span><span lang=EN-US>4.2</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">节的第一步，新建一个普通的空</span><span lang=EN-US>java</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">项目，项目取名为&#8220;</span><span lang=EN-US>myswt</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&#8221;。</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第二步：参照第</span><span lang=EN-US>26</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">页的&#8220;第一步：将</span><span lang=EN-US>JFace</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">包加入到</span><span lang=EN-US>Eclipse</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的构建路径上&#8221;，将以下列表中</span><span lang=EN-US>SWT/JFace</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">项目依赖的</span><span lang=EN-US>jar</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">包，全部加入到</span><span lang=EN-US>myswt</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">项目的库引用中。</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-outline-level: 1"><span lang=EN-US>ECLIPSE_HOME/plugins</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">目录下的</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.osgi_3.0.1/osgi.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.osgi_3.0.1/core.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.osgi_3.0.1/resolver.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.osgi_3.0.1/defaultAdaptor.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.osgi_3.0.1/eclipseAdaptor.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.osgi_3.0.1/console.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.core.runtime_3.0.1/runtime.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.ui.workbench_3.0.1/workbench.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.ui.workbench.compatibility_3.0.0/compatibility.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.swt.win32_3.0.1/ws/win32/swt.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.jface_3.0.0/jface.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.jface.text_3.0.1/jfacetext.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span lang=EN-US>ECLIPSE_HOME/language/eclipse/plugins/</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">目录下的</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.jface.text.nl1_3.0.1/nl1.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.core.runtime.nl1_3.0.1/nl1.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.jface.nl1_3.0.0/nl1.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US>org.eclipse.ui.workbench.nl1_3.0.1/nl1.jar</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0; mso-para-margin-left: 2.0gd"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">说明：</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（</span><span lang=EN-US>1</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）有些读者可能不太明白为什么要导入这么多</span><span lang=EN-US>jar</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">包。其实道理很简单，举例说，开发基于</span><span lang=EN-US>Hibernate</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的程序，需要</span><span lang=EN-US>Hibernate</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang=EN-US>jar</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">支持包。同样，开发</span><span lang=EN-US>SWT/Jface</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序，也需要</span><span lang=EN-US>SWT/Jface</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang=EN-US>jar</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">支持包。而且不仅仅是</span><span lang=EN-US>swt.jar</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</span><span lang=EN-US>jface.jar</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">两个包就够了，因为这两个包本身还需要其他</span><span lang=EN-US>jar</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">包的支持。而</span><span lang=EN-US>Eclipse</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中的库引用和</span><span lang=EN-US>Java</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中</span><span lang=EN-US>classpath</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的作用是一样的。</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（</span><span lang=EN-US>2</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</span><span lang=EN-US>ECLIPSE_HOME</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在</span><span lang=EN-US>Eclipse</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中是一个变量，它指向</span><span lang=EN-US>Eclipse</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的安装目录。</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（</span><span lang=EN-US>3</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</span><span lang=EN-US>ECLIPSE_HOME/language</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中的</span><span lang=EN-US>language</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是多国语言包的安装目录（参阅图</span><span lang=EN-US>2.4</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）。</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（</span><span lang=EN-US>4</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</span><span lang=EN-US>language</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下的几个</span><span lang=EN-US>jar</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">包的导入是可选的。如果不导入这几个包，则所开发的</span><span lang=EN-US>SWT</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序在运行时，继承自原界面的控件文字将会是英文的。比如第</span><span lang=EN-US>178</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">页的图</span><span lang=EN-US>16.3</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，如果不导入这几个多国语言包，则图中的&#8220;确定&#8221;按钮，将变成英文&#8220;</span><span lang=EN-US>OK</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&#8221;。</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（</span><span lang=EN-US>5</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）这些界面设置的结果将保存在项目根目录下的&#8220;</span><span lang=EN-US>.classpath</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&#8221;文件中。</span></p>
<p class=a style="MARGIN: 7.8pt 0cm"><font size=2><font style="BACKGROUND-COLOR: #dddddd"><span style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">提示：把这些</span><span lang=EN-US>jar</span><span style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">包一个个导入到项目中实在太麻烦了，这里告诉大家一个更快捷的方法：把随书光盘&#8220;第二篇</span><span lang=EN-US><span style="mso-spacerun: yes">&nbsp; </span>SWT_JFace</span><span style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">篇</span><span lang=EN-US>(6-16</span><span style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">章</span><span lang=EN-US>)\myswt</span><span style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">&#8221;中的</span><span lang=EN-US>.classpath</span><span style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">文件覆盖当前所建项目的</span><span lang=EN-US>.classpath</span><span style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">文件，然后刷新项目（右键单击项目名，选择快捷菜单的&#8220;刷新&#8221;项），这样也能完成本步的操作。</span></font></font></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第三步：参照第</span><span lang=EN-US>49</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">页，将</span><span lang=EN-US>SWT</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">原生库</span><span lang=EN-US>swt-win32-3063.dll</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">导入到项目中。</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">完成上面三步之后，我们就可以开发并运行</span><span lang=EN-US>SWT/JFace</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序了。不过因为没有安装</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，因此也就无法使用</span><span lang=EN-US>SWT Designer</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">提供的一些新建</span><span lang=EN-US>SWT</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序的向导（如第</span><span lang=EN-US>50</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">页），但那又有什么关系呢？我们可以直接创建</span><span lang=EN-US>java</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序文件，直接写</span><span lang=EN-US>swt</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">代码，也是一样的。</span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0"><span lang=EN-US><o:p>&nbsp;</o:p></span></p>
</div>
<img src="http://www.cnblogs.com/glchengang/aggbug/383775.html?type=1" width="1" height="1" alt=""/><p>评论: 0　<a href="http://www.cnblogs.com/glchengang/archive/2006/04/24/383775.html#pagedcomment" target="_blank">查看评论</a>　<a href="http://www.cnblogs.com/glchengang/archive/2006/04/24/383775.html#commentform" target="_blank">发表评论</a></p><hr/><p>最新新闻：<br/>· <a href="http://news.cnblogs.com/n/56793/" target="_blank">知名扩展 Firebug 的简化版登陆 Chrome</a><span style="color:gray">(2010-02-09 22:59)</span><br/>· <a href="http://news.cnblogs.com/n/56792/" target="_blank">Google 悄悄地启用 1e100.net，打枪地不要</a><span style="color:gray">(2010-02-09 22:57)</span><br/>· <a href="http://news.cnblogs.com/n/56791/" target="_blank">从 Google 代码库找到的好东西</a><span style="color:gray">(2010-02-09 22:46)</span><br/>· <a href="http://news.cnblogs.com/n/56789/" target="_blank">苹果在线商店临时关闭 或将推新Macbook</a><span style="color:gray">(2010-02-09 22:39)</span><br/>· <a href="http://news.cnblogs.com/n/56788/" target="_blank">豆瓣网推出豆瓣电台iPhone客户端</a><span style="color:gray">(2010-02-09 21:51)</span><br/></p><p>编辑推荐：<a href="http://news.cnblogs.com/n/56782/" target="_blank">2010年2月编程语言排行榜</a><br/></p><p>网站导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/" target="_blank">个人主页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/group/" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a></p>]]></description></item><item><title>书中软件的下载链接</title><link>http://www.cnblogs.com/glchengang/archive/2005/11/23/282466.html</link><dc:creator>陈刚</dc:creator><author>陈刚</author><pubDate>Wed, 23 Nov 2005 01:28:00 GMT</pubDate><guid>http://www.cnblogs.com/glchengang/archive/2005/11/23/282466.html</guid><description><![CDATA[<p>阅读: 10852 评论: 5 作者: <a href="http://www.cnblogs.com/glchengang/" target="_blank">陈刚</a> 发表于 2005-11-23 09:28 <a href="http://www.cnblogs.com/glchengang/archive/2005/11/23/282466.html" target="_blank">原文链接</a></p><P><SPAN style="COLOR: red"><STRONG>如果你是初学者<BR>如果你没有自行解决不同版本之间配置变化冲突的能力<BR>那么建议你在学习时一定要使用书中列出的版本。</STRONG></SPAN><BR><BR>（1）由于书籍光盘属于商品，开源软件不允许与商品形式公布，所以出版社把这些软件都拿掉了。<BR>（2）有些软件太大，博客园的空间有限制，无法全部放在网站上。因此只给出了链接。<BR>（3）有些链接，服务器在国外，可能由于网络不稳定和速度等原因，暂时无法下载，请多试几次。<BR><BR>Eclipse3.0.1 JDK：<BR><A href="ftp://ftp.jaist.ac.jp/pub/eclipse/eclipse/downloads/drops/R-3.0.1-200409161125/eclipse-SDK-3.0.1-win32.zip">ftp://ftp.jaist.ac.jp/pub/eclipse/eclipse/downloads/drops/R-3.0.1-200409161125/eclipse-SDK-3.0.1-win32.zip</A><BR><BR>Eclipse3.0.1语言包：<BR><A href="http://download.eclipse.org/eclipse/downloads/drops/L-3.0.1_Translations-200409161125/NLpack-eclipse-SDK-3.0.x-win32.zip">http://download.eclipse.org/eclipse/downloads/drops/L-3.0.1_Translations-200409161125/NLpack-eclipse-SDK-3.0.x-win32.zip</A></P>
<P class=pnoall>SWT Designer v2.1.0<BR><A href="http://www.instantiations.com/windowbuilderpro/files/Designer_v2.1.0_for_Eclipse3.0.zip">http://www.instantiations.com/windowbuilderpro/files/Designer_v2.1.0_for_Eclipse3.0.zip</A><BR><BR><FONT face="Times New Roman" color=#000000 size=3>CVSNT 2.0.58d<BR><A href="http://www.cnblogs.com/Files/glchengang/cvsnt-2.0.58d.rar">http://www.cnblogs.com/Files/glchengang/cvsnt-2.0.58d.rar</A></FONT><BR><BR>Lomboz<BR><A href="http://download.zh.forge.objectweb.org/lomboz/org.objectweb.lomboz_3.0.1.N20050106.zip">http://download.zh.forge.objectweb.org/lomboz/org.objectweb.lomboz_3.0.1.N20050106.zip</A><BR>emf-sdo-runtime-2.0.0.zip <BR><A href="http://download.zh.forge.objectweb.org/lomboz/emf-sdo-runtime-2.0.0.zip">http://download.zh.forge.objectweb.org/lomboz/emf-sdo-runtime-2.0.0.zip</A><BR><BR>国际化插件gunsoft<BR><A href="http://www.cnblogs.com/Files/glchengang/de.guhsoft.jinto_0.7.0.zip">http://www.cnblogs.com/Files/glchengang/de.guhsoft.jinto_0.7.0.zip</A><BR><BR>打包一章所涉及的软件<BR>fatjar插件：<A href="http://www.cnblogs.com/Files/glchengang/net.sf.fjep.fatjar_0.0.16.zip">http://www.cnblogs.com/Files/glchengang/net.sf.fjep.fatjar_0.0.16.zip</A><BR>JavaLauncher：<A href="http://www.cnblogs.com/Files/glchengang/JavaLauncher.zip">http://www.cnblogs.com/Files/glchengang/JavaLauncher.zip</A><BR>图标资源编辑：<A href="http://www.cnblogs.com/Files/glchengang/rh_chinese_gb.zip">http://www.cnblogs.com/Files/glchengang/rh_chinese_gb.zip</A><BR><BR>MySQL 4.1.8　<A href="http://downloads.mysql.com/archives/mysql-4.1/mysql-4.1.8-win.zip">http://downloads.mysql.com/archives/mysql-4.1/mysql-4.1.8-win.zip</A><BR>mysql-connector-java-3.0.17-ga.zip（3.0.17和3.0.16通用）　<A href="http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-3.0.17-ga.zip/from/http://www.greatlinux.com/mysql/">http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-3.0.17-ga.zip/from/http://www.greatlinux.com/mysql/</A><BR><BR>Hibernate：<A href="http://prdownloads.sourceforge.net/hibernate/?sort_by=date&amp;sort=desc">http://prdownloads.sourceforge.net/hibernate/?sort_by=date&amp;sort=desc</A><BR><BR>让Dreamweaver支持struts的插件，ast-03.mxp：<A href="http://www.cnblogs.com/Files/glchengang/ast-03.rar">http://www.cnblogs.com/Files/glchengang/ast-03.rar</A><BR></P><img src="http://www.cnblogs.com/glchengang/aggbug/282466.html?type=1" width="1" height="1" alt=""/><p>评论: 5　<a href="http://www.cnblogs.com/glchengang/archive/2005/11/23/282466.html#pagedcomment" target="_blank">查看评论</a>　<a href="http://www.cnblogs.com/glchengang/archive/2005/11/23/282466.html#commentform" target="_blank">发表评论</a></p><hr/><p>最新新闻：<br/>· <a href="http://news.cnblogs.com/n/56793/" target="_blank">知名扩展 Firebug 的简化版登陆 Chrome</a><span style="color:gray">(2010-02-09 22:59)</span><br/>· <a href="http://news.cnblogs.com/n/56792/" target="_blank">Google 悄悄地启用 1e100.net，打枪地不要</a><span style="color:gray">(2010-02-09 22:57)</span><br/>· <a href="http://news.cnblogs.com/n/56791/" target="_blank">从 Google 代码库找到的好东西</a><span style="color:gray">(2010-02-09 22:46)</span><br/>· <a href="http://news.cnblogs.com/n/56789/" target="_blank">苹果在线商店临时关闭 或将推新Macbook</a><span style="color:gray">(2010-02-09 22:39)</span><br/>· <a href="http://news.cnblogs.com/n/56788/" target="_blank">豆瓣网推出豆瓣电台iPhone客户端</a><span style="color:gray">(2010-02-09 21:51)</span><br/></p><p>编辑推荐：<a href="http://news.cnblogs.com/n/56782/" target="_blank">2010年2月编程语言排行榜</a><br/></p><p>网站导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/" target="_blank">个人主页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/group/" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a></p>]]></description></item><item><title>网上购买本书 &amp; 样章下载</title><link>http://www.cnblogs.com/glchengang/archive/2005/11/13/275257.html</link><dc:creator>陈刚</dc:creator><author>陈刚</author><pubDate>Sun, 13 Nov 2005 06:13:00 GMT</pubDate><guid>http://www.cnblogs.com/glchengang/archive/2005/11/13/275257.html</guid><description><![CDATA[<p>阅读: 4078 评论: 0 作者: <a href="http://www.cnblogs.com/glchengang/" target="_blank">陈刚</a> 发表于 2005-11-13 14:13 <a href="http://www.cnblogs.com/glchengang/archive/2005/11/13/275257.html" target="_blank">原文链接</a></p>如果当地书店没有，可以去网上购买<BR><BR>china-pub：<A href="http://www.china-pub.com/computers/common/info.asp?id=25601" target=_new><FONT color=#002c99>http://www.china-pub.com/computers/common/info.asp?id=25601</FONT></A><BR><BR>样章下载：<A href="http://www.china-pub.com/computers/ebook25001-30000/25601/ch18.rar">《第18章 常用插件扩展点》</A><BR><img src="http://www.cnblogs.com/glchengang/aggbug/275257.html?type=1" width="1" height="1" alt=""/><p>评论: 0　<a href="http://www.cnblogs.com/glchengang/archive/2005/11/13/275257.html#pagedcomment" target="_blank">查看评论</a>　<a href="http://www.cnblogs.com/glchengang/archive/2005/11/13/275257.html#commentform" target="_blank">发表评论</a></p><hr/><p>最新新闻：<br/>· <a href="http://news.cnblogs.com/n/56793/" target="_blank">知名扩展 Firebug 的简化版登陆 Chrome</a><span style="color:gray">(2010-02-09 22:59)</span><br/>· <a href="http://news.cnblogs.com/n/56792/" target="_blank">Google 悄悄地启用 1e100.net，打枪地不要</a><span style="color:gray">(2010-02-09 22:57)</span><br/>· <a href="http://news.cnblogs.com/n/56791/" target="_blank">从 Google 代码库找到的好东西</a><span style="color:gray">(2010-02-09 22:46)</span><br/>· <a href="http://news.cnblogs.com/n/56789/" target="_blank">苹果在线商店临时关闭 或将推新Macbook</a><span style="color:gray">(2010-02-09 22:39)</span><br/>· <a href="http://news.cnblogs.com/n/56788/" target="_blank">豆瓣网推出豆瓣电台iPhone客户端</a><span style="color:gray">(2010-02-09 21:51)</span><br/></p><p>编辑推荐：<a href="http://news.cnblogs.com/n/56782/" target="_blank">2010年2月编程语言排行榜</a><br/></p><p>网站导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/" target="_blank">个人主页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/group/" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a></p>]]></description></item><item><title>[第二、三次印刷的附录] 读者提问精选</title><link>http://www.cnblogs.com/glchengang/archive/2005/07/11/190575.html</link><dc:creator>陈刚</dc:creator><author>陈刚</author><pubDate>Mon, 11 Jul 2005 06:43:00 GMT</pubDate><guid>http://www.cnblogs.com/glchengang/archive/2005/07/11/190575.html</guid><description><![CDATA[<p>阅读: 15333 评论: 0 作者: <a href="http://www.cnblogs.com/glchengang/" target="_blank">陈刚</a> 发表于 2005-07-11 14:43 <a href="http://www.cnblogs.com/glchengang/archive/2005/07/11/190575.html" target="_blank">原文链接</a></p><DIV class=Section1>&nbsp;</DIV>
<H1 class=Section1 style="MARGIN: 15.6pt 0cm"><SPAN style="FONT-FAMILY: 黑体">附录</SPAN><SPAN lang=EN-US>B</SPAN><SPAN style="FONT-FAMILY: 黑体">　读者提问精选（第二次印刷）</SPAN></H1>
<H2 class=Section1><SPAN style="FONT-FAMILY: 黑体">起步篇</SPAN></H2>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：为什么我的</SPAN><SPAN lang=EN-US>Swt-Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">安装总是不成功？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：将安装步骤要点简述如下：</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>1</SPAN><SPAN style="FONT-FAMILY: 宋体">）下载</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">笔者于</SPAN><SPAN lang=EN-US>2005</SPAN><SPAN style="FONT-FAMILY: 宋体">年</SPAN><SPAN lang=EN-US>8</SPAN><SPAN style="FONT-FAMILY: 宋体">月重新去</SPAN><SPAN lang=EN-US>http://www.swt-designer.com/</SPAN><SPAN style="FONT-FAMILY: 宋体">网站下载了用于</SPAN><SPAN lang=EN-US>eclipse3.0.1</SPAN><SPAN style="FONT-FAMILY: 宋体">的</SPAN><SPAN lang=EN-US>Swt-Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">。现在它已经升级到了</SPAN><SPAN lang=EN-US>4.1.0 GA 2005.07.09</SPAN><SPAN style="FONT-FAMILY: 宋体">，本书中使用的是</SPAN><SPAN lang=EN-US>2.1.0 GA 2004.08.19</SPAN><SPAN style="FONT-FAMILY: 宋体">。不过两个版本的安装和使用方法基本相同。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">）安装</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">将下载</SPAN><SPAN lang=EN-US>Swt-Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">得到的</SPAN><SPAN lang=EN-US>ZIP</SPAN><SPAN style="FONT-FAMILY: 宋体">包解压，然后将解压后得到的&#8220;</SPAN><SPAN lang=EN-US>features</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN lang=EN-US>plugins</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN lang=EN-US>designer-delete.bat</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;复制到</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">的安装目录下。这时因为</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">的安装目录已经存在</SPAN><SPAN lang=EN-US>features</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN lang=EN-US>plugins</SPAN><SPAN style="FONT-FAMILY: 宋体">目录，故而会弹出一个提示框问你是否覆盖目录，回答&#8220;是&#8221;。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">如果还没出现第</SPAN><SPAN lang=EN-US>48</SPAN><SPAN style="FONT-FAMILY: 宋体">页的&#8220;图</SPAN><SPAN lang=EN-US>6.2</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;所示界面，把</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">下的</SPAN><SPAN lang=EN-US>configuration</SPAN><SPAN style="FONT-FAMILY: 宋体">目录删除（</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">在其中缓存了一些文件），再启动</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">。注意：对于</SPAN><SPAN lang=EN-US>Eclipse3.1</SPAN><SPAN style="FONT-FAMILY: 宋体">版，必须保留</SPAN><SPAN lang=EN-US>configuration</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下的</SPAN><SPAN lang=EN-US>config.ini</SPAN><SPAN style="FONT-FAMILY: 宋体">文件。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">）</SPAN><SPAN lang=EN-US>link</SPAN><SPAN style="FONT-FAMILY: 宋体">式的安装</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">如果你选择第</SPAN><SPAN lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">章介绍的</SPAN><SPAN lang=EN-US>link</SPAN><SPAN style="FONT-FAMILY: 宋体">式插件安装方法，则必须注意一点：</SPAN><SPAN lang=EN-US>Swt-Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">的</SPAN><SPAN lang=EN-US>ZIP</SPAN><SPAN style="FONT-FAMILY: 宋体">包解压后，</SPAN><SPAN lang=EN-US>features</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN lang=EN-US>plugins</SPAN><SPAN style="FONT-FAMILY: 宋体">并没有被包含在一个</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下，</SPAN><SPAN lang=EN-US>WEB</SPAN><SPAN style="FONT-FAMILY: 宋体">篇的</SPAN><SPAN lang=EN-US>lomboz</SPAN><SPAN style="FONT-FAMILY: 宋体">插件安装也有同样的问题。正确的目录结构请参考第</SPAN><SPAN lang=EN-US>421</SPAN><SPAN style="FONT-FAMILY: 宋体">页的&#8220;图</SPAN><SPAN lang=EN-US>23.12</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;，在此页第八行已经有&#8220;注意&#8221;的提示，但还是有不少读者忽略了这一要点。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：用</SPAN><SPAN lang=EN-US>Swt-Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">向导新建一个</SPAN><SPAN lang=EN-US>swt</SPAN><SPAN style="FONT-FAMILY: 宋体">项目时，并没有自动生成</SPAN><SPAN lang=EN-US>src</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下的包&#8220;</SPAN><SPAN lang=EN-US>package com.swtdesigner.ResourceManager</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;和类文件</SPAN><SPAN lang=EN-US>resourcemanager.java</SPAN><SPAN style="FONT-FAMILY: 宋体">，如第</SPAN><SPAN lang=EN-US>48</SPAN><SPAN style="FONT-FAMILY: 宋体">页的图</SPAN><SPAN lang=EN-US>6.4</SPAN><SPAN style="FONT-FAMILY: 宋体">，请问怎么办？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：本书所用</SPAN><SPAN lang=EN-US>Swt-Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">是</SPAN><SPAN lang=EN-US>2.1.0 GA</SPAN><SPAN style="FONT-FAMILY: 宋体">版，如果你用</SPAN><SPAN lang=EN-US>4.1.0 GA</SPAN><SPAN style="FONT-FAMILY: 宋体">版，则此新版本不会自动生成</SPAN><SPAN lang=EN-US>src</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下的包和类文件。其实这个自动生成的类文件，并没有太大用处，笔者在开发时常常把它删除掉。如果你想看一下此文件的代码，在随书光盘里有它的源文件。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：在公司无法注册激活</SPAN><SPAN lang=EN-US>SWT Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">，提示&#8220;</SPAN><SPAN lang=EN-US>Transaction failed:Internal Server Error</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;。</SPAN><SPAN lang=EN-US> </SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：很可能是公司网络做了限制的原因，比如把</SPAN><SPAN lang=EN-US>SWT Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">激活时的响应端口给封掉了。可以尝试以下解决方法：</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>1</SPAN><SPAN style="FONT-FAMILY: 宋体">）通过一台可以上网的电脑（比如家里的）将</SPAN><SPAN lang=EN-US>SWT Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">注册好，然后把协议文件</SPAN><SPAN lang=EN-US>C:\Documents and Settings\ [UserName]\Instantiations.license</SPAN><SPAN style="FONT-FAMILY: 宋体">从你家里复制到公司电脑上。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">）书中关于</SPAN><SPAN lang=EN-US>SWT Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">的内容只占很少（仅第</SPAN><SPAN lang=EN-US>6</SPAN><SPAN style="FONT-FAMILY: 宋体">章），第</SPAN><SPAN lang=EN-US>7</SPAN><SPAN style="FONT-FAMILY: 宋体">章之后的</SPAN><SPAN lang=EN-US>SWT/JFace</SPAN><SPAN style="FONT-FAMILY: 宋体">例程是完全可以脱离</SPAN><SPAN lang=EN-US>SWT Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">而运行的。</SPAN><SPAN lang=EN-US>SWT Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">仅仅是一个界面辅助设计工具，它对</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">编程不是必须的。你可以参照随书光盘里的视频，不必用</SPAN><SPAN lang=EN-US>SWT Designer</SPAN><SPAN style="FONT-FAMILY: 宋体">项目创建向导就能将光盘上的项目安装起来，并顺利运行书中的所有</SPAN><SPAN lang=EN-US>SWT/JFace</SPAN><SPAN style="FONT-FAMILY: 宋体">例程。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：按照书上注册好了，但还是出现了&#8220;</SPAN><SPAN lang=EN-US>Activation&nbsp;is&nbsp;complete.Thank&nbsp;you.</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;</SPAN><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：此句英文意思是&#8220;已完成激活&#8221;，也就是说你已经注册成功了。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：执行</SPAN><SPAN lang=EN-US>&#8220;cvs </SPAN><SPAN style="FONT-FAMILY: 宋体">提交</SPAN><SPAN lang=EN-US>&#8221;</SPAN><SPAN style="FONT-FAMILY: 宋体">命令时，服务器报告错误，怎么办？错误信息如下：</SPAN> </P>
<P class=Char><SPAN lang=EN-US>myproject: cvs server: C:\WINDOWS\TEMP\cvs6C.tmp: No such file or directory</SPAN> </P>
<P class=Char><SPAN lang=EN-US>myproject: cvs [server aborted]: error diffing HelloWorld.java</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：这是由于</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">用户对</SPAN><SPAN lang=EN-US>&#8220;C:\WINDOWS\TEMP\&#8221;</SPAN><SPAN style="FONT-FAMILY: 宋体">没有权限造成的，解决方法有如下三种：</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>1</SPAN><SPAN style="FONT-FAMILY: 宋体">）通过</SPAN><SPAN lang=EN-US>CVSNT</SPAN><SPAN style="FONT-FAMILY: 宋体">控制面板&#8220;</SPAN><SPAN lang=EN-US>Advanced</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;选项卡下的&#8220;</SPAN><SPAN lang=EN-US>Temporary</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;，重新换一个此</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">用户具有读写权限的目录。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">）用</SPAN><SPAN lang=EN-US>Windows</SPAN><SPAN style="FONT-FAMILY: 宋体">管理工具把&#8220;</SPAN><SPAN lang=EN-US>C:\WINDOWS\TEMP\</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;的读写权限赋予此</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">用户。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">）将此</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">用户设成</SPAN><SPAN lang=EN-US>WINDOWS</SPAN><SPAN style="FONT-FAMILY: 宋体">的超级用户。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：第</SPAN><SPAN lang=EN-US>33</SPAN><SPAN style="FONT-FAMILY: 宋体">页有一个命令&#8220;</SPAN><SPAN lang=EN-US>cvs -d c:\cvsfile passwd -a giles</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;。我的系统是</SPAN><SPAN lang=EN-US>windows 2000 </SPAN><SPAN style="FONT-FAMILY: 宋体">，用户名为</SPAN><SPAN lang=EN-US>i love you</SPAN><SPAN style="FONT-FAMILY: 宋体">，密码为</SPAN><SPAN lang=EN-US>12345678</SPAN><SPAN style="FONT-FAMILY: 宋体">。请问就我的情况，上面这个</SPAN><SPAN lang=EN-US>cvs</SPAN><SPAN style="FONT-FAMILY: 宋体">命令应该怎么样写才正确。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：如果此用户名没有空格，则命令如下：</SPAN><SPAN lang=EN-US>cvs -d c:\cvsfile passwd -a iloveyou</SPAN><SPAN style="FONT-FAMILY: 宋体">，回车后再输入两次</SPAN><SPAN lang=EN-US>12345678</SPAN><SPAN style="FONT-FAMILY: 宋体">。如果此用户名中有空格，则可以用双引号把用户名引起来，命令如下：</SPAN><SPAN lang=EN-US> cvs -d c:\cvsfile passwd -a "i love you"</SPAN><SPAN style="FONT-FAMILY: 宋体">。如果想更稳妥一些，建议在安装好</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">后，创建一个新的</SPAN><SPAN lang=EN-US>windows</SPAN><SPAN style="FONT-FAMILY: 宋体">用户来给</SPAN><SPAN lang=EN-US>cvs</SPAN><SPAN style="FONT-FAMILY: 宋体">用，注意：这并不要求你事先用此新</SPAN><SPAN lang=EN-US>windows</SPAN><SPAN style="FONT-FAMILY: 宋体">用户来登录</SPAN><SPAN lang=EN-US>windows</SPAN><SPAN style="FONT-FAMILY: 宋体">。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：我下载的</SPAN><SPAN lang=EN-US>JDK</SPAN><SPAN style="FONT-FAMILY: 宋体">是</SPAN><SPAN lang=EN-US>1.4.2_08</SPAN><SPAN style="FONT-FAMILY: 宋体">版，书中所用是</SPAN><SPAN lang=EN-US>1.4.2_06</SPAN><SPAN style="FONT-FAMILY: 宋体">版，可以吗？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：完全可以。本书对</SPAN><SPAN lang=EN-US>JDK</SPAN><SPAN style="FONT-FAMILY: 宋体">版不敏感，只要是</SPAN><SPAN lang=EN-US>1.4.2</SPAN><SPAN style="FONT-FAMILY: 宋体">以上就行。理论上对</SPAN><SPAN lang=EN-US>1.5</SPAN><SPAN style="FONT-FAMILY: 宋体">版</SPAN><SPAN lang=EN-US>JDK</SPAN><SPAN style="FONT-FAMILY: 宋体">也支持，但本书不推荐。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：请问</SPAN><SPAN lang=EN-US>Eclipse3.1</SPAN><SPAN style="FONT-FAMILY: 宋体">的多国语言包有吗？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：</SPAN><SPAN lang=EN-US>Eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">还没有发布</SPAN><SPAN lang=EN-US>3.1</SPAN><SPAN style="FONT-FAMILY: 宋体">版的多国语言包。备注：笔者</SPAN><SPAN lang=EN-US>2005</SPAN><SPAN style="FONT-FAMILY: 宋体">年</SPAN><SPAN lang=EN-US>9</SPAN><SPAN style="FONT-FAMILY: 宋体">月</SPAN><SPAN lang=EN-US>8</SPAN><SPAN style="FONT-FAMILY: 宋体">日做的检查。</SPAN> </P>
<H2 class=Section1><SPAN lang=EN-US>SWT/JFace</SPAN><SPAN style="FONT-FAMILY: 黑体">篇</SPAN></H2>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：我按照书中导入</SPAN><SPAN lang=EN-US>JFace</SPAN><SPAN style="FONT-FAMILY: 宋体">的方法导入了</SPAN><SPAN lang=EN-US>swt.jar</SPAN><SPAN style="FONT-FAMILY: 宋体">，编译没有任何问题，但是运行</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">程序时还是出现下面的异常，这是怎么回事？</SPAN> </P>
<P class=Char><SPAN lang=EN-US>Exception in thread "main" java.lang.UnsatisfiedLinkError: no swt-win32-3063 in java.library.path <BR>at java.lang.ClassLoader.loadLibrary(Unknown Source) </SPAN></P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">　　另外我有一个关于</SPAN><SPAN lang=EN-US>SWT/JFace</SPAN><SPAN style="FONT-FAMILY: 宋体">的疑惑：在</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">环境下写的程序如果用了</SPAN><SPAN lang=EN-US>SWT/JFace</SPAN><SPAN style="FONT-FAMILY: 宋体">包中的类，在</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">下运行当然没问题，但是如果拿到一个只有</SPAN><SPAN lang=EN-US>jdk</SPAN><SPAN style="FONT-FAMILY: 宋体">的环境下运行，</SPAN><SPAN lang=EN-US>jdk</SPAN><SPAN style="FONT-FAMILY: 宋体">中没有它所需要的</SPAN><SPAN lang=EN-US>SWT/JFace</SPAN><SPAN style="FONT-FAMILY: 宋体">中的类，它还能运行吗？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">回答：第一个问题参考书第</SPAN><SPAN lang=EN-US>49</SPAN><SPAN style="FONT-FAMILY: 宋体">页的&#8220;导入</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">的原生库&#8221;。第二个问题参考第</SPAN><SPAN lang=EN-US>21</SPAN><SPAN style="FONT-FAMILY: 宋体">章的&#8220;项目的打包与发行&#8221;，关键在第</SPAN><SPAN lang=EN-US>274</SPAN><SPAN style="FONT-FAMILY: 宋体">页的第二行。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：我在运行程序时出了</SPAN><SPAN lang=EN-US>java.lang.NoClassDefFoundError</SPAN><SPAN style="FONT-FAMILY: 宋体">异常，怎么办？异常信息如下：</SPAN> </P>
<P class=Char><SPAN lang=EN-US>Exception in thread "main" java.lang.NoClassDefFoundError: org/osgi/framework/InvalidSyntaxException </SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：</SPAN><SPAN lang=EN-US>NoClassDefFoundError</SPAN><SPAN style="FONT-FAMILY: 宋体">异常是因为找不到所需类引起的，对于</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">程序，则根本原因是没有配置好</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">类库。很多读者以为把</SPAN><SPAN lang=EN-US>swt.jar</SPAN><SPAN style="FONT-FAMILY: 宋体">加入库引用，</SPAN><SPAN lang=EN-US>Eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">界面上没有错误就行了，但</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">程序在运行时还需要一些其他</SPAN><SPAN lang=EN-US>JAR</SPAN><SPAN style="FONT-FAMILY: 宋体">包来支持，如上面提示的</SPAN><SPAN lang=EN-US>osgi JAR</SPAN><SPAN style="FONT-FAMILY: 宋体">包。解决方法如下：</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>1</SPAN><SPAN style="FONT-FAMILY: 宋体">）参考第</SPAN><SPAN lang=EN-US>26</SPAN><SPAN style="FONT-FAMILY: 宋体">页的中间段落有对库引用的解释。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">）参考第</SPAN><SPAN lang=EN-US>48</SPAN><SPAN style="FONT-FAMILY: 宋体">页底部的&#8220;注意&#8221;。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">）参考随书光盘的</SPAN><SPAN lang=EN-US>"</SPAN><SPAN style="FONT-FAMILY: 宋体">第二篇</SPAN><SPAN lang=EN-US>&nbsp; SWT_JFace</SPAN><SPAN style="FONT-FAMILY: 宋体">篇</SPAN><SPAN lang=EN-US>(6-16</SPAN><SPAN style="FONT-FAMILY: 宋体">章</SPAN><SPAN lang=EN-US>)\myswt"</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下的</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">项目的库引用</SPAN><SPAN lang=EN-US>".classpath"</SPAN><SPAN style="FONT-FAMILY: 宋体">文件，通过它你可以知道</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">项目所需要</SPAN><SPAN lang=EN-US>JAR</SPAN><SPAN style="FONT-FAMILY: 宋体">包。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：在练习第</SPAN><SPAN lang=EN-US>53</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN lang=EN-US>55</SPAN><SPAN style="FONT-FAMILY: 宋体">页的例子时，我导入了</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">的原生库，但在调试过程还是出现了错误。错误信息如下：&#8220;</SPAN><SPAN lang=EN-US>Fatal&nbsp;exception&nbsp;occurred.Program&nbsp;will&nbsp;exit</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;</SPAN> <SPAN style="FONT-FAMILY: 宋体">。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：参考第</SPAN><SPAN lang=EN-US>48</SPAN><SPAN style="FONT-FAMILY: 宋体">页或第</SPAN><SPAN lang=EN-US>211</SPAN><SPAN style="FONT-FAMILY: 宋体">页的方法，先创建一个完整的</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">项目。注意：仅导入</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">的原生库是不够的，还要设置对</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">及其相关库的库引用等。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：在书中第</SPAN><SPAN lang=EN-US>50</SPAN><SPAN style="FONT-FAMILY: 宋体">页建立&#8220;</SPAN><SPAN lang=EN-US>Application&nbsp;Window</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;时，无法完成，提示如下：</SPAN><SPAN lang=EN-US>This&nbsp;wizard&nbsp;is&nbsp; not&nbsp;supported&nbsp;in&nbsp;free&nbsp;version&nbsp;of&nbsp;the&nbsp;product&nbsp;.&nbsp;Swing&nbsp;Object&nbsp;construction&nbsp;is&nbsp;only&nbsp;available&nbsp;in&nbsp;the&nbsp;professional&nbsp;edition.</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：从出错提示&#8220;</SPAN><SPAN lang=EN-US>Swing&nbsp;Object&nbsp;</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8230;&#8230;&#8221;中的</SPAN><SPAN lang=EN-US>Swing</SPAN><SPAN style="FONT-FAMILY: 宋体">，可知你用错了一个</SPAN><SPAN lang=EN-US>wizard</SPAN><SPAN style="FONT-FAMILY: 宋体">。</SPAN><SPAN lang=EN-US>Swt-Designer free</SPAN><SPAN style="FONT-FAMILY: 宋体">版的只支持</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">不支持</SPAN><SPAN lang=EN-US>Swing</SPAN><SPAN style="FONT-FAMILY: 宋体">，本书的内容是关于</SPAN><SPAN lang=EN-US>SWT</SPAN><SPAN style="FONT-FAMILY: 宋体">的，和</SPAN><SPAN lang=EN-US>Swing</SPAN><SPAN style="FONT-FAMILY: 宋体">无关。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：为什么我写了一个继承自</SPAN><SPAN lang=EN-US>Shell</SPAN><SPAN style="FONT-FAMILY: 宋体">类的程序（</SPAN><SPAN lang=EN-US>public class PuzzleFrame extends Shell</SPAN><SPAN style="FONT-FAMILY: 宋体">）总是出错呢，出错信息为：</SPAN><SPAN lang=EN-US>Exception in thread "main" org.eclipse.swt.SWTException: Subclassing not allowed: </SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：</SPAN><SPAN lang=EN-US>Shell</SPAN><SPAN style="FONT-FAMILY: 宋体">是可以被继承的，但</SPAN><SPAN lang=EN-US>Shell</SPAN><SPAN style="FONT-FAMILY: 宋体">的父类</SPAN><SPAN lang=EN-US>Decorations</SPAN><SPAN style="FONT-FAMILY: 宋体">有一个</SPAN><SPAN lang=EN-US>checkSubclass ()</SPAN><SPAN style="FONT-FAMILY: 宋体">函数，当其子类不符合此方法的检查规则时，就会抛出异常。因此不是简单继承</SPAN><SPAN lang=EN-US>Shell</SPAN><SPAN style="FONT-FAMILY: 宋体">就行了的，还要做一些比较复杂的工作。此外，软件设计原则告诉我们：&#8220;聚合优于继承&#8221;，如果可以不通过继承</SPAN><SPAN lang=EN-US>Shell</SPAN><SPAN style="FONT-FAMILY: 宋体">来达到使用它的目标，那就尽量采用简单的方式吧，至少笔者在项目开发中，从未通过继承的方式来使用过</SPAN><SPAN lang=EN-US>Shell</SPAN><SPAN style="FONT-FAMILY: 宋体">。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：</SPAN><SPAN lang=EN-US>Display.syncExec()</SPAN><SPAN style="FONT-FAMILY: 宋体">与</SPAN><SPAN lang=EN-US>Display.asyncExec()</SPAN><SPAN style="FONT-FAMILY: 宋体">的区别，两者有什么不同？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：</SPAN><SPAN lang=EN-US>syncExec()</SPAN><SPAN style="FONT-FAMILY: 宋体">和</SPAN><SPAN lang=EN-US>asyncExec()</SPAN><SPAN style="FONT-FAMILY: 宋体">方法是外部线程调用本地线程的桥接方法。</SPAN><SPAN lang=EN-US>syncExec</SPAN><SPAN style="FONT-FAMILY: 宋体">是必须等待调用结束后才可以进行到后面的流程，而</SPAN><SPAN lang=EN-US>asyncExec</SPAN><SPAN style="FONT-FAMILY: 宋体">是调用的线程无需等待就可以进行后面的流程。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：</SPAN><SPAN lang=EN-US>MessageDialog.openInfomation</SPAN><SPAN style="FONT-FAMILY: 宋体">，我想调整这个窗口的大小</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：不妨改用</SPAN><SPAN lang=EN-US>MessageBox</SPAN><SPAN style="FONT-FAMILY: 宋体">类，参考第</SPAN><SPAN lang=EN-US>195</SPAN><SPAN style="FONT-FAMILY: 宋体">页。</SPAN> </P>
<H2 class=Section1><SPAN style="FONT-FAMILY: 黑体">插件开发篇</SPAN></H2>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：书上有查找和打开编辑器的方法，但有没有得到一个编辑器对象</SPAN><SPAN lang=EN-US>EditorPart</SPAN><SPAN style="FONT-FAMILY: 宋体">的方法？然后对这个对象可以进行操作，例如传一个参数。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>1</SPAN><SPAN style="FONT-FAMILY: 宋体">）第</SPAN><SPAN lang=EN-US>231</SPAN><SPAN style="FONT-FAMILY: 宋体">页的第五行的</SPAN><SPAN lang=EN-US>editor</SPAN><SPAN style="FONT-FAMILY: 宋体">，它就是一个编辑器（</SPAN><SPAN lang=EN-US>EditorPart</SPAN><SPAN style="FONT-FAMILY: 宋体">）对象。</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">）关于给编辑器传参数，这里介绍一种间接的方法：给</SPAN><SPAN lang=EN-US>EditorInput</SPAN><SPAN style="FONT-FAMILY: 宋体">对象增加一个属性字段，而通过</SPAN><SPAN lang=EN-US>EditorPart</SPAN><SPAN style="FONT-FAMILY: 宋体">类中的</SPAN><SPAN lang=EN-US>init</SPAN><SPAN style="FONT-FAMILY: 宋体">方法（第</SPAN><SPAN lang=EN-US>228</SPAN><SPAN style="FONT-FAMILY: 宋体">页第一行），就能得到传入的</SPAN><SPAN lang=EN-US>EditorInput</SPAN><SPAN style="FONT-FAMILY: 宋体">对象，从而取出</SPAN><SPAN lang=EN-US>EditorInput</SPAN><SPAN style="FONT-FAMILY: 宋体">对象所携带的数据。这样数据参数用</SPAN><SPAN lang=EN-US>EditorInpurt</SPAN><SPAN style="FONT-FAMILY: 宋体">做中间载体，就传给了</SPAN><SPAN lang=EN-US>EditorPart</SPAN><SPAN style="FONT-FAMILY: 宋体">编辑器。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：如果我的程序不是插件，而且传统应用程序。第</SPAN><SPAN lang=EN-US>18.8</SPAN><SPAN style="FONT-FAMILY: 宋体">节所讲制作帮助的方法，对于我来说就无效了，请问我该如何来制作帮助呢？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：给传统应用程序制作帮助比较麻烦，建议你看看</SPAN><SPAN lang=EN-US>Eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">中最新的</SPAN><SPAN lang=EN-US>RCP</SPAN><SPAN style="FONT-FAMILY: 宋体">开发，</SPAN><SPAN lang=EN-US>RCP</SPAN><SPAN style="FONT-FAMILY: 宋体">它结合了插件和传统应用程序的优点：实际上是插件的开发方式，表面上看起来却象一个完完全全的传统应用程序。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：第</SPAN><SPAN lang=EN-US>300</SPAN><SPAN style="FONT-FAMILY: 宋体">页的程序出现以下错误：</SPAN> </P>
<P class=Char><SPAN lang=EN-US>java.lang.NoClassDefFoundError: org/aspectj/lang/Signature <BR>at java.lang.Class.forName0(Native Method) <BR>at java.lang.Class.forName(Unknown Source) </SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：错用了连接包</SPAN><SPAN lang=EN-US>mysql-connector-java-3.1.10-bin-g.jar</SPAN><SPAN style="FONT-FAMILY: 宋体">，应该用</SPAN><SPAN lang=EN-US>mysql-connector-java-3.0.17-ga-bin.jar</SPAN> </P>
<H2 class=Section1><SPAN lang=EN-US>WEB</SPAN><SPAN style="FONT-FAMILY: 黑体">篇</SPAN></H2>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：第</SPAN><SPAN lang=EN-US>24</SPAN><SPAN style="FONT-FAMILY: 宋体">章说到把</SPAN><SPAN lang=EN-US>j2src</SPAN><SPAN style="FONT-FAMILY: 宋体">的文件输出到</SPAN><SPAN lang=EN-US>"hello\WEB-INF\classes"</SPAN><SPAN style="FONT-FAMILY: 宋体">下，把随书光盘上第</SPAN><SPAN lang=EN-US>22</SPAN><SPAN style="FONT-FAMILY: 宋体">章的</SPAN><SPAN lang=EN-US>sms\src</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下的文件拷到相应目录就行了？我发现光盘的</SPAN><SPAN lang=EN-US>"hello\WEB-INF\classes"</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下并没有任何文件，我有点迷惑</SPAN> <SPAN lang=EN-US>*.class</SPAN><SPAN style="FONT-FAMILY: 宋体">文件到底应该放在哪里？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：如果照第</SPAN><SPAN lang=EN-US>433</SPAN><SPAN style="FONT-FAMILY: 宋体">页的&#8220;图</SPAN><SPAN lang=EN-US>24.1</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;所示做好了设置，则</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">会自动将源文件编译成</SPAN><SPAN lang=EN-US>*.class</SPAN><SPAN style="FONT-FAMILY: 宋体">文件，并输出到&#8220;</SPAN><SPAN lang=EN-US>hello\Web-INF\classes"</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下。所以随书光盘上没有必要在</SPAN><SPAN lang=EN-US>"hello\Web-INF\classes "</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下保留着</SPAN><SPAN lang=EN-US>*.class</SPAN><SPAN style="FONT-FAMILY: 宋体">文件。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：我想在</SPAN><SPAN lang=EN-US>Eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">中加入</SPAN><SPAN lang=EN-US>Struts</SPAN><SPAN style="FONT-FAMILY: 宋体">，看到第</SPAN><SPAN lang=EN-US>25</SPAN><SPAN style="FONT-FAMILY: 宋体">章说把</SPAN><SPAN lang=EN-US>lib</SPAN><SPAN style="FONT-FAMILY: 宋体">下的</SPAN><SPAN lang=EN-US>*.jar</SPAN><SPAN style="FONT-FAMILY: 宋体">复制到</SPAN><SPAN lang=EN-US>hello/WEB-INF/lib</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下。我没有看过本书的任何一章，不知道这个</SPAN><SPAN lang=EN-US>hello/Web-INF/lib</SPAN><SPAN style="FONT-FAMILY: 宋体">的绝对路径是多少？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：参阅第</SPAN><SPAN lang=EN-US>425</SPAN><SPAN style="FONT-FAMILY: 宋体">页的&#8220;图</SPAN><SPAN lang=EN-US>23.20</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;，绝对路径是</SPAN><SPAN lang=EN-US>c:/elcipse/workspace/hello/Web-INF/lib</SPAN><SPAN style="FONT-FAMILY: 宋体">。另：本书</SPAN><SPAN lang=EN-US>WEB</SPAN><SPAN style="FONT-FAMILY: 宋体">篇的每章都有前后承接关系，建议从第</SPAN><SPAN lang=EN-US>23</SPAN><SPAN style="FONT-FAMILY: 宋体">章看起。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：在搭建</SPAN><SPAN lang=EN-US>J2EE</SPAN><SPAN style="FONT-FAMILY: 宋体">开发平台中，是否要安装</SPAN><SPAN lang=EN-US>J2EEsdk</SPAN><SPAN style="FONT-FAMILY: 宋体">？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：不需要安装。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：我看有的书讲</SPAN><SPAN lang=EN-US>Hibernate</SPAN><SPAN style="FONT-FAMILY: 宋体">的安装，并没有提到要使用</SPAN><SPAN lang=EN-US>Tomcat</SPAN><SPAN style="FONT-FAMILY: 宋体">等服务器，不知是什么原因？</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：</SPAN><SPAN lang=EN-US>Hibernate</SPAN><SPAN style="FONT-FAMILY: 宋体">并不是只能用于</SPAN><SPAN lang=EN-US>B/S</SPAN><SPAN style="FONT-FAMILY: 宋体">结构的</SPAN><SPAN lang=EN-US>WEB</SPAN><SPAN style="FONT-FAMILY: 宋体">开发，对于</SPAN><SPAN lang=EN-US>C/S</SPAN><SPAN style="FONT-FAMILY: 宋体">结构的应用程序也一样可以用。也就是说，</SPAN><SPAN lang=EN-US>Tomcat</SPAN><SPAN style="FONT-FAMILY: 宋体">等</SPAN><SPAN lang=EN-US>WEB</SPAN><SPAN style="FONT-FAMILY: 宋体">服务器和</SPAN><SPAN lang=EN-US>Hiberate</SPAN><SPAN style="FONT-FAMILY: 宋体">没有必然的依赖关系。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：第</SPAN><SPAN lang=EN-US>450</SPAN><SPAN style="FONT-FAMILY: 宋体">页的</SPAN><SPAN lang=EN-US>LogonAction.java</SPAN><SPAN style="FONT-FAMILY: 宋体">与光盘上的代码不一致</SPAN> </P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">回：此项目的代码按照开发进度，打成了不同的</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">版本（参考第</SPAN><SPAN lang=EN-US>416</SPAN><SPAN style="FONT-FAMILY: 宋体">页倒数第二段的说明）。光盘代码上显示的都是</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">上的最终版本，当然和书上的之前版本的代码不同了。建议你先将光盘&#8220;</SPAN><SPAN lang=EN-US>cvsfile</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;目录安装到你的</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">上（安装参见光盘所带视频），这样就能从</SPAN><SPAN lang=EN-US>CVS</SPAN><SPAN style="FONT-FAMILY: 宋体">上检出前一个版本的代码了。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：</SPAN><SPAN lang=EN-US>JSP</SPAN><SPAN style="FONT-FAMILY: 宋体">程序连接</SPAN><SPAN lang=EN-US>MySQL</SPAN><SPAN style="FONT-FAMILY: 宋体">数据库出错，出错信息如下：</SPAN> </P>
<P class=Char><SPAN lang=EN-US>HTTP Status 500 - <BR></SPAN><SPAN style="FONT-FAMILY: 宋体">&#8230;&#8230;（省略）</SPAN> </P>
<P class=Char><SPAN lang=EN-US>root cause <BR>Unable to find a javac compiler; <BR>com.sun.tools.javac.Main is not on the classpath. <BR>Perhaps JAVA_HOME does not point to the JDK <BR>org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:106) </SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：从出错信息中的&#8220;</SPAN><SPAN lang=EN-US>Perhaps JAVA_HOME does not point to the JDK&nbsp;</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;，可知原因是找不到</SPAN><SPAN lang=EN-US>JDK</SPAN><SPAN style="FONT-FAMILY: 宋体">，所以</SPAN><SPAN lang=EN-US>JSP</SPAN><SPAN style="FONT-FAMILY: 宋体">无法编译。估计是你在安装</SPAN><SPAN lang=EN-US>Tomcat</SPAN><SPAN style="FONT-FAMILY: 宋体">时步骤有误，检查一下第</SPAN><SPAN lang=EN-US>419</SPAN><SPAN style="FONT-FAMILY: 宋体">的&#8220;图</SPAN><SPAN lang=EN-US>23.7</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;这一步。如果还不行，那就设置一个指向</SPAN><SPAN lang=EN-US>JDK</SPAN><SPAN style="FONT-FAMILY: 宋体">目录的</SPAN><SPAN lang=EN-US>Windows</SPAN><SPAN style="FONT-FAMILY: 宋体">环境变量</SPAN><SPAN lang=EN-US>JAVA_HOME</SPAN><SPAN style="FONT-FAMILY: 宋体">。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN> </P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">问：我按第</SPAN><SPAN lang=EN-US>23</SPAN><SPAN style="FONT-FAMILY: 宋体">章成功安装了</SPAN><SPAN lang=EN-US>Tomcat5.0.28</SPAN><SPAN style="FONT-FAMILY: 宋体">和</SPAN><SPAN lang=EN-US>lomboz</SPAN><SPAN style="FONT-FAMILY: 宋体">，但新建了一个</SPAN><SPAN lang=EN-US>J2EE</SPAN><SPAN style="FONT-FAMILY: 宋体">项目后，怎么不能在项目中启动</SPAN><SPAN lang=EN-US>Tomcat</SPAN><SPAN style="FONT-FAMILY: 宋体">了，控制台的错误信息如下：</SPAN> </P>
<P class=Char><SPAN lang=EN-US>2005-8-3 10:17:18 org.apache.coyote.http11.Http11Protocol init <BR></SPAN><SPAN style="FONT-FAMILY: 宋体">严重</SPAN><SPAN lang=EN-US>: Error initializing endpoint <BR>java.net.BindException: Address already in use: JVM_Bind:8081 <BR>2005-8-3 </SPAN><SPAN lang=EN-US>10:17:18</SPAN><SPAN lang=EN-US> org.apache.catalina.startup.Catalina load </SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">答：注意到异常信息中的&#8220;</SPAN><SPAN lang=EN-US>Address already in use: JVM_Bind:8081</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;，得知</SPAN><SPAN lang=EN-US>8081</SPAN><SPAN style="FONT-FAMILY: 宋体">端口已经被其他程序占用了。可能是你启动了两次</SPAN><SPAN lang=EN-US>Tomcat</SPAN><SPAN style="FONT-FAMILY: 宋体">，或者是</SPAN><SPAN lang=EN-US>8081</SPAN><SPAN style="FONT-FAMILY: 宋体">端口被其他</SPAN><SPAN lang=EN-US>WEB</SPAN><SPAN style="FONT-FAMILY: 宋体">软件占用了。</SPAN> </P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp; <BR>
<H1 class=Section1 style="MARGIN: 15.6pt 0cm"><SPAN style="FONT-FAMILY: 黑体">附录C</SPAN><SPAN style="FONT-FAMILY: 黑体">　读者提问精选（第三次印刷） <BR><BR></SPAN></H1></SPAN>
<P>问：安装Oralce后，Eclipse无法启动，总报找不到jre的错误。<BR>答：Eclipse只有一个依赖，就是JRE（JAVA运行时环境）。Oralce自带了一个jre1.3，所以可能会对我们装JDK的jre1.4型成冲突，Eclipse不知道要定位哪一个jre。解决方法有如下三种：<BR>（1）在windows环境变量里，创建变量JAVA_HOME= C:\jdk，并把Path变量中c:\jdk\bin的位置提到前面<BR>（2）运行Eclipse时加上参数：eclipse -vm c:\jdk\jre\bin\javaw<BR>（3）将c:\jdk的jre目录复制到C:\eclipse3.0.1\eclipse目录下</P>
<P>问：我安装的是最新版本eclipse3.1.1,按照书上的操作方法把多国语言包安装后，已经实现大部分菜单汉化,但是还有一些菜单没有汉化。然后我又把configuration文件夹删除掉，重新打开eclipse却出现错误，Eclipse无法启动了。<BR>答：<BR>（1）学习本书建议使用eclipse3.0.1版。<BR>（2）eclipse3.1.1的语言包已经分成了两个，你可能只安装了一个，所以汉化不完整。<BR>（3）eclipse3.1.1不能删除configuaration目录，里面的config.ini必须保留。也可以在运行eclipse时加一个clean参数，如：eclipse.exe -clean</P>
<P>问：我在自己的电脑安装了CVSNT，我也可以用Eclipse连上它，但我的同事却连不进来。为什么？<BR>答：连不上CVS的原因有很多种，你的情况很可能是Windows XP防火墙的原因，你关掉防火墙再试试吧。<BR>问：行了，我把XP的防火墙关掉后，我同事可以连进来了。不过，不用防火墙，那电脑就容易中毒，有更好的解决方法吗？<BR>答：防火墙是防黑客的，不是防病毒的。解决方法还是有的，你可以在防火墙的设置里，把CVS服务的端口号打开。具体操作如下：控制面板－＞高级－＞设置(T)...－＞服务－＞添加(D)...，打开"服务设置"窗口后，"服务描述"填"cvsnt服务"；"计算机名称"填你的计算名或IP；服务的外部内部端口号填2401。</P>
<P>问：用Canvas显示图片，如果图片大，怎么使用滚动条？<BR>答：new Canvas(shell, SWT.BORDER|SWT.H_SCROLL|SWT.V_SCROLL);</P>
<P>问：在运行Java应用程序时，可以连上数据库。但当运行插件时（即"运行时工作台"）却连不上数据库了，不知为何？<BR>答：有可能是插件没有找到mysql的jar连接包的原因。注意P299最后一段的说明。</P>
<P>问：我在"连接MySQL的测试程序"时出现了下面的错误，会不会是版本冲突的错误：<BR>java.sql.BatchUpdateException: Syntax error or access violation message from server: "Unknown table engine 'lnnoDB'"<BR>答：不是版本的错误，是你写的"lnnoDB"有问题，它的第一个字母应该是字母I（大小写不区分），不是数字1，也不是字母L。以后实践时最好复制随书光盘上的代码，以确保正确。</P>
<P>问：如何在RCP程序启动时打开默认的Edit，该在那里加代码？<BR>答：WorkbenchWindowAdvisor的继承类，改写它的postWindowOpen方法</P>
<P>问：在Text上加了addVerifyListener后，就不能将字符复制到text中了。请问有什么好的方法既可以实现对输入的校验，又可以实现对复制的数据进行校验。<BR>答：你想将字符以复制的方式输入到Text中，那么就不要用addVerifyListener这种在输入时就做实时检查的方式。可以选择在最后提交时，再去校验数据的方式。</P>
<P>问：我想将浏览器嵌入到Ecplise，请问怎么做？<BR>答：用org.eclipse.swt.browser.Browser类。</P>
<P>问：有的可视化组件在SWT Desiger找不到，ScrolledComposite。但是写程序可以用它，就是没法像button按扭直接拖放，是不是要自己定制一个这样的组件用？<BR>答：SWT Desiger中只包含了一些常用的组件，如书中所强调，一定要学会脱离SWT Desiger这类UI设计工具自己手工写界面代码。</P>
<P>问：我在导入随书光盘中的项目后，在运行时提示："类路径引用的归档 D:/Eclipse/eclipse/language/eclipse/plugins/org.eclipse.core.runtime.nl1_3.0.1/nl1.jar 不存在。"请问是怎么回事？如何运行光盘中的实例？<BR>答：出这个错误，可能是因为<BR>（１）你没用和本书相同版本的Eclipse，或者Eclipse安装目录和本书的不一样<BR>（２）你没有装Eclipse语言包，或者Eclipse语言包安装目录和本书的不一样<BR>解决方法：把Eclipse的构建路径中的对org.eclipse.core.runtime.nl1_3.0.1/nl1.jar重新指定到实际的位置就可以了（构建路径在哪里，请参考本书P444图25.１）<BR></P><img src="http://www.cnblogs.com/glchengang/aggbug/190575.html?type=1" width="1" height="1" alt=""/><p>评论: 0　<a href="http://www.cnblogs.com/glchengang/archive/2005/07/11/190575.html#pagedcomment" target="_blank">查看评论</a>　<a href="http://www.cnblogs.com/glchengang/archive/2005/07/11/190575.html#commentform" target="_blank">发表评论</a></p><hr/><p>最新新闻：<br/>· <a href="http://news.cnblogs.com/n/56793/" target="_blank">知名扩展 Firebug 的简化版登陆 Chrome</a><span style="color:gray">(2010-02-09 22:59)</span><br/>· <a href="http://news.cnblogs.com/n/56792/" target="_blank">Google 悄悄地启用 1e100.net，打枪地不要</a><span style="color:gray">(2010-02-09 22:57)</span><br/>· <a href="http://news.cnblogs.com/n/56791/" target="_blank">从 Google 代码库找到的好东西</a><span style="color:gray">(2010-02-09 22:46)</span><br/>· <a href="http://news.cnblogs.com/n/56789/" target="_blank">苹果在线商店临时关闭 或将推新Macbook</a><span style="color:gray">(2010-02-09 22:39)</span><br/>· <a href="http://news.cnblogs.com/n/56788/" target="_blank">豆瓣网推出豆瓣电台iPhone客户端</a><span style="color:gray">(2010-02-09 21:51)</span><br/></p><p>编辑推荐：<a href="http://news.cnblogs.com/n/56782/" target="_blank">2010年2月编程语言排行榜</a><br/></p><p>网站导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/" target="_blank">个人主页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/group/" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a></p>]]></description></item><item><title>《Eclipse从入门到精通》勘误表</title><link>http://www.cnblogs.com/glchengang/archive/2005/06/19/177204.html</link><dc:creator>陈刚</dc:creator><author>陈刚</author><pubDate>Sun, 19 Jun 2005 08:13:00 GMT</pubDate><guid>http://www.cnblogs.com/glchengang/archive/2005/06/19/177204.html</guid><description><![CDATA[<p>阅读: 9057 评论: 15 作者: <a href="http://www.cnblogs.com/glchengang/" target="_blank">陈刚</a> 发表于 2005-06-19 16:13 <a href="http://www.cnblogs.com/glchengang/archive/2005/06/19/177204.html" target="_blank">原文链接</a></p><DIV class=Section1><SPAN lang=EN-US><STRONG style="FONT-SIZE: 24pt">对第一次印刷的勘误表</STRONG></SPAN><BR><BR>
<TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 437.4pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse" cellSpacing=0 cellPadding=0 width=583 border=1>
<TBODY>
<TR>
<TD style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">页码</SPAN></P></TD>
<TD style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错误位置</SPAN></P></TD>
<TD style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">修改后的文字</SPAN></P></TD></TR>
<TR>
<TD>&nbsp;</TD>
<TD>&nbsp;<SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">前言</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'">III</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">，第四行未尾添加进如右所示文字</SPAN></TD>
<TD>&nbsp;<SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">感谢网友</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'">ksafe</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">、卢俊、</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'">yasker</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">、</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'">konhon</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">、</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'">limux</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体">等校正了本书中的错误。</SPAN></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>11</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">页中间</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN><SPAN lang=EN-US>Edition for Eclipse3.0GA&amp;3.0.1</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN><SPAN lang=EN-US>V2.1.0 GA</SPAN><SPAN style="FONT-FAMILY: 宋体">（</SPAN><SPAN lang=EN-US>2004.08.19</SPAN><SPAN style="FONT-FAMILY: 宋体">）</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>13</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">第一段的末尾</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：足够开发使用了。）</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：足够开发使用了；如果选</SPAN><SPAN lang=EN-US>professional</SPAN><SPAN style="FONT-FAMILY: 宋体">项，则只能暂时使用几天）</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>27</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">从图</SPAN><SPAN lang=EN-US>4.26</SPAN><SPAN style="FONT-FAMILY: 宋体">往下的第</SPAN><SPAN lang=EN-US>4</SPAN><SPAN style="FONT-FAMILY: 宋体">行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN><SPAN lang=EN-US>Ctrl+Alt+O</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN><SPAN lang=EN-US>Ctrl+Shift+O </SPAN><SPAN style="FONT-FAMILY: 宋体">。</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>31</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal style="TEXT-ALIGN: left" align=left><SPAN style="FONT-FAMILY: 宋体">第</SPAN><SPAN lang=EN-US>3~7</SPAN><SPAN style="FONT-FAMILY: 宋体">行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN><SPAN lang=EN-US>Shift + Ctrl</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN><SPAN lang=EN-US>Ctrl + Shift</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（排版说明：将</SPAN><SPAN lang=EN-US>Ctrl</SPAN><SPAN style="FONT-FAMILY: 宋体">和</SPAN><SPAN lang=EN-US>Shift</SPAN><SPAN style="FONT-FAMILY: 宋体">两单词交换一下位置，共五对）</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>54</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal style="TEXT-ALIGN: left" align=left><SPAN style="FONT-FAMILY: 宋体">第</SPAN><SPAN lang=EN-US>7</SPAN><SPAN style="FONT-FAMILY: 宋体">行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：要想得到完整的代码请查阅本书随书光盘中的例程。</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：要得到程序的</SPAN><SPAN lang=EN-US>import</SPAN><SPAN style="FONT-FAMILY: 宋体">引用，或完整代码，请查阅随书光盘中的相应例程。</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">第</SPAN><SPAN lang=EN-US>57</SPAN><SPAN style="FONT-FAMILY: 宋体">页</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">中上部有灰色背景的代码</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">重新调整</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 409.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=546 colSpan=2>
<P class=MsoNormal style="TEXT-ALIGN: left" align=left><SPAN lang=EN-US style="COLOR: blue">public</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">class</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;HelloWorld&nbsp;extends&nbsp;MouseAdapter{</SPAN><SPAN lang=EN-US style="COLOR: green">//</SPAN><SPAN style="COLOR: green; FONT-FAMILY: 宋体">或</SPAN><SPAN lang=EN-US style="COLOR: green">implements&nbsp;MouseListener<BR></SPAN><SPAN lang=EN-US style="COLOR: blue">&nbsp;&nbsp;&nbsp; public</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">static</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">void</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;main(String[]&nbsp;args)&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;new HelloWorld().createContent();<BR>&nbsp;&nbsp;&nbsp; }<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">private</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">void</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;createContent()&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: black; FONT-FAMILY: 宋体">&#8230;&#8230;</SPAN><SPAN lang=EN-US style="COLOR: black"><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Text&nbsp;text1&nbsp;=&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">new</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;Text(shell,&nbsp;SWT.BORDER);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Text&nbsp;text2&nbsp;=&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">new</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;Text(shell,&nbsp;SWT.BORDER);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;text1.addMouseListener(</SPAN><SPAN lang=EN-US style="COLOR: blue">this</SPAN><SPAN lang=EN-US style="COLOR: black">);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;text2.addMouseListener(</SPAN><SPAN lang=EN-US style="COLOR: blue">this</SPAN><SPAN lang=EN-US style="COLOR: black">);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: black; FONT-FAMILY: 宋体">&#8230;&#8230;</SPAN><SPAN lang=EN-US style="COLOR: black"><BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">public</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;</SPAN><SPAN lang=EN-US style="COLOR: blue">void</SPAN><SPAN lang=EN-US style="COLOR: black">&nbsp;mouseDoubleClick(MouseEvent&nbsp;e)&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageDialog.openInformation(</SPAN><SPAN lang=EN-US style="COLOR: blue">null</SPAN><SPAN lang=EN-US style="COLOR: black">,&nbsp;"",&nbsp;"Hello&nbsp;World");<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>}</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>89</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal style="TEXT-ALIGN: left" align=left><SPAN lang=EN-US>"</SPAN><SPAN style="FONT-FAMILY: 宋体">图</SPAN><SPAN lang=EN-US>10.23"</SPAN><SPAN style="FONT-FAMILY: 宋体">右图下标</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN><SPAN lang=EN-US>horizontalIndent=9</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN><SPAN lang=EN-US>horizontalIndent=90</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>114</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">倒数第三行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN><SPAN lang=EN-US>TablItem</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN><SPAN lang=EN-US>TableItem</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（排版说明：紧挨着，共有两个</SPAN><SPAN lang=EN-US>TablItem</SPAN><SPAN style="FONT-FAMILY: 宋体">）</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>144</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">中间（倒数第</SPAN><SPAN lang=EN-US>20</SPAN><SPAN style="FONT-FAMILY: 宋体">行）</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：正数，则</SPAN><SPAN lang=EN-US>obj1</SPAN><SPAN style="FONT-FAMILY: 宋体">移到</SPAN><SPAN lang=EN-US>obj2</SPAN><SPAN style="FONT-FAMILY: 宋体">之间</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：正数，则</SPAN><SPAN lang=EN-US>obj1</SPAN><SPAN style="FONT-FAMILY: 宋体">移到</SPAN><SPAN lang=EN-US>obj2</SPAN><SPAN style="FONT-FAMILY: 宋体">之前</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>148</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">中间部份，本页第</SPAN><SPAN lang=EN-US>17</SPAN><SPAN style="FONT-FAMILY: 宋体">行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>tv.remove(o);</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>/*</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>* </SPAN><SPAN style="FONT-FAMILY: 宋体">这里只是从界面表格将其去除掉。</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>* </SPAN><SPAN style="FONT-FAMILY: 宋体">如想从数据库里删除还得写相应的数据库删除代码。</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>*/</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>tv.remove(o);//</SPAN><SPAN style="FONT-FAMILY: 宋体">从界面上删除</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>//</SPAN><SPAN style="FONT-FAMILY: 宋体">从数据模型的</SPAN><SPAN lang=EN-US>List</SPAN><SPAN style="FONT-FAMILY: 宋体">容器中删除</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>List list = (List)tv.getInput();</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>list.remove(o);</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>//</SPAN><SPAN style="FONT-FAMILY: 宋体">如想从数据库里删除还要写相应的数据库删除代码</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>153</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">第</SPAN><SPAN lang=EN-US>7</SPAN><SPAN style="FONT-FAMILY: 宋体">行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>ctv.remove(o);</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>ctv.remove(o);//</SPAN><SPAN style="FONT-FAMILY: 宋体">从界面上删除</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>((List)tv.getInput()).remove(o);//</SPAN><SPAN style="FONT-FAMILY: 宋体">从数据模型的</SPAN><SPAN lang=EN-US>List</SPAN><SPAN style="FONT-FAMILY: 宋体">容器中删除</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>153</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">第</SPAN><SPAN lang=EN-US>17</SPAN><SPAN style="FONT-FAMILY: 宋体">行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>tv.remove(o);</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>tv.remove(o);//</SPAN><SPAN style="FONT-FAMILY: 宋体">从界面上删除</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>((List)tv.getInput()).remove(o);//</SPAN><SPAN style="FONT-FAMILY: 宋体">从数据模型的</SPAN><SPAN lang=EN-US>List</SPAN><SPAN style="FONT-FAMILY: 宋体">容器中删除</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>346</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">中间（第</SPAN><SPAN lang=EN-US>17</SPAN><SPAN style="FONT-FAMILY: 宋体">行）</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>super.dispose();</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>Context.getInstance().removeLogoffListener(this);</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>Context.getInstance().dispose();</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>Context.getInstance().removeLogoffListener(this);</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>Context.getInstance().dispose();</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>super.dispose();</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（排版说明：要保证三行向右对齐。原来的第三行后缩了几个空格，是错的。）</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>416</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">中下部（倒数第</SPAN><SPAN lang=EN-US>11</SPAN><SPAN style="FONT-FAMILY: 宋体">行）</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN><SPAN lang=EN-US>Lomboz3.1.0</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN><SPAN lang=EN-US>Lomboz3.0.1</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>421</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">第</SPAN><SPAN lang=EN-US>8</SPAN><SPAN style="FONT-FAMILY: 宋体">行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：图</SPAN><SPAN lang=EN-US>23.12</SPAN><SPAN style="FONT-FAMILY: 宋体">是安装完成后的</SPAN><SPAN lang=EN-US>Eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">目录结构。注意：</SPAN><SPAN lang=EN-US>lomboz</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下还有一个</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">子目录。</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">图</SPAN><SPAN lang=EN-US>23.12</SPAN><SPAN style="FONT-FAMILY: 宋体">是安装完成后的</SPAN><SPAN lang=EN-US>Eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">目录结构。</SPAN></P>
<P class=Char><SPAN style="FONT-FAMILY: 宋体">注意：</SPAN><SPAN lang=EN-US>lomboz</SPAN><SPAN style="FONT-FAMILY: 宋体">目录下还有一个</SPAN><SPAN lang=EN-US>eclipse</SPAN><SPAN style="FONT-FAMILY: 宋体">子目录，这是采用</SPAN><SPAN lang=EN-US>Link</SPAN><SPAN style="FONT-FAMILY: 宋体">式插件安装方法比较容易忽略的一个要点。</SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">（排版说明：将&#8220;注意：</SPAN><SPAN lang=EN-US>lomboz</SPAN><SPAN style="FONT-FAMILY: 宋体">目录</SPAN><SPAN lang=EN-US>.....</SPAN><SPAN style="FONT-FAMILY: 宋体">&#8221;另起一行，并且加上灰色背景）</SPAN></P></TD></TR>
<TR>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: 1pt solid; WIDTH: 27.9pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=37>
<P class=MsoNormal><SPAN lang=EN-US>475</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 130.5pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=174>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">图</SPAN><SPAN lang=EN-US>26.3</SPAN><SPAN style="FONT-FAMILY: 宋体">下的第一行</SPAN></P></TD>
<TD style="BORDER-RIGHT: 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 279pt; PADDING-TOP: 0cm; BORDER-BOTTOM: 1pt solid" vAlign=top width=372>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">错：</SPAN><SPAN lang=EN-US>Hibernate-2.7.1c.zip</SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">对：</SPAN><SPAN lang=EN-US>Hibernate-2.1.7c.zip</SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;<BR></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><BR></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><STRONG style="FONT-SIZE: 24pt">对第二次印刷的勘误表</STRONG></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US>&nbsp;&nbsp;&nbsp; 
<TABLE cellSpacing=0 cellPadding=0 border=1>
<TBODY>
<TR>
<TD vAlign=top width=37>
<P><SPAN>书中页码</SPAN></P></TD>
<TD vAlign=top width=174>
<P><SPAN>错误位置</SPAN></P></TD>
<TD vAlign=top width=372>
<P><SPAN>修改后的文字</SPAN></P></TD></TR>
<TR>
<TD vAlign=top width=37>
<P><SPAN lang=EN-US>&nbsp;</SPAN></P></TD>
<TD vAlign=top width=174>
<P><SPAN>第</SPAN><SPAN lang=EN-US>27</SPAN><SPAN>页</SPAN> <SPAN>&#8220;图</SPAN><SPAN lang=EN-US>4.26</SPAN><SPAN>&#8221;</SPAN> <SPAN>下</SPAN><SPAN lang=EN-US>10</SPAN><SPAN>行</SPAN></P></TD>
<TD vAlign=top width=372>
<P><SPAN>错：空缺了步骤（</SPAN><SPAN lang=EN-US>3</SPAN><SPAN>）</SPAN></P>
<P><SPAN>对：将步骤的编号依次上移一位</SPAN></P></TD></TR>
<TR>
<TD vAlign=top width=37>
<P><SPAN lang=EN-US>&nbsp;</SPAN></P></TD>
<TD vAlign=top width=174>
<P><SPAN>第</SPAN><SPAN lang=EN-US>116</SPAN><SPAN>页倒数</SPAN><SPAN lang=EN-US>6</SPAN><SPAN>－</SPAN><SPAN lang=EN-US>9</SPAN><SPAN>行</SPAN></P></TD>
<TD vAlign=top width=372>
<P><SPAN>错：</SPAN></P>
<P><SPAN lang=EN-US>/*</SPAN></P>
<P><SPAN lang=EN-US>* </SPAN><SPAN>创建一个</SPAN><SPAN lang=EN-US>Table</SPAN><SPAN>对象，在式样里设置它可多选，全列选择。</SPAN></P>
<P><SPAN lang=EN-US>*</SPAN><SPAN>　并用两条语句设置它显示表头和表格线</SPAN></P>
<P><SPAN lang=EN-US>*/</SPAN></P>
<P><SPAN lang=EN-US>&nbsp;</SPAN></P>
<P><SPAN>对：</SPAN></P>
<P><SPAN lang=EN-US>/*</SPAN></P>
<P><SPAN lang=EN-US>* </SPAN><SPAN>创建一个</SPAN><SPAN lang=EN-US>Tree</SPAN><SPAN>对象</SPAN></P>
<P><SPAN lang=EN-US>*/</SPAN></P></TD></TR>
<TR>
<TD vAlign=top width=37>
<P><SPAN lang=EN-US>&nbsp;</SPAN></P></TD>
<TD vAlign=top width=174>
<P><SPAN lang=EN-US>P346</SPAN><SPAN>倒数第</SPAN><SPAN lang=EN-US>14</SPAN><SPAN>行</SPAN> </P></TD>
<TD vAlign=top width=372>
<P><SPAN>错：</SPAN><SPAN lang=EN-US>addLogonListener </SPAN></P>
<P><SPAN>对：</SPAN><SPAN lang=EN-US>addLogoffListener</SPAN></P></TD></TR>
<TR>
<TD vAlign=top width=37>
<P><SPAN lang=EN-US>&nbsp;</SPAN></P></TD>
<TD vAlign=top width=174>
<P><SPAN>第</SPAN><SPAN lang=EN-US>448</SPAN><SPAN>页倒数第五行错了。</SPAN></P></TD>
<TD vAlign=top width=372>
<P><SPAN>错：</SPAN></P>
<P><SPAN lang=EN-US>property</SPAN><SPAN>是关键的属性，它必须对应于</SPAN><SPAN lang=EN-US>LogonAction</SPAN><SPAN>类中的一个字段。</SPAN></P>
<P><SPAN>对：</SPAN></P>
<P><SPAN lang=EN-US>property</SPAN><SPAN>是关键的属性，它必须对应于</SPAN><SPAN lang=EN-US>UserForm</SPAN><SPAN>类</SPAN><SPAN lang=EN-US>(ActionForm)</SPAN><SPAN>的一个字段</SPAN></P></TD></TR></TBODY></TABLE></SPAN></P></DIV><img src="http://www.cnblogs.com/glchengang/aggbug/177204.html?type=1" width="1" height="1" alt=""/><p>评论: 15　<a href="http://www.cnblogs.com/glchengang/archive/2005/06/19/177204.html#pagedcomment" target="_blank">查看评论</a>　<a href="http://www.cnblogs.com/glchengang/archive/2005/06/19/177204.html#commentform" target="_blank">发表评论</a></p><hr/><p>最新新闻：<br/>· <a href="http://news.cnblogs.com/n/56793/" target="_blank">知名扩展 Firebug 的简化版登陆 Chrome</a><span style="color:gray">(2010-02-09 22:59)</span><br/>· <a href="http://news.cnblogs.com/n/56792/" target="_blank">Google 悄悄地启用 1e100.net，打枪地不要</a><span style="color:gray">(2010-02-09 22:57)</span><br/>· <a href="http://news.cnblogs.com/n/56791/" target="_blank">从 Google 代码库找到的好东西</a><span style="color:gray">(2010-02-09 22:46)</span><br/>· <a href="http://news.cnblogs.com/n/56789/" target="_blank">苹果在线商店临时关闭 或将推新Macbook</a><span style="color:gray">(2010-02-09 22:39)</span><br/>· <a href="http://news.cnblogs.com/n/56788/" target="_blank">豆瓣网推出豆瓣电台iPhone客户端</a><span style="color:gray">(2010-02-09 21:51)</span><br/></p><p>编辑推荐：<a href="http://news.cnblogs.com/n/56782/" target="_blank">2010年2月编程语言排行榜</a><br/></p><p>网站导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/" target="_blank">个人主页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://home.cnblogs.com/group/" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a></p>]]></description></item></channel></rss>