子在川上曰

  逝者如斯夫不舍昼夜
随笔 - 71, 文章 - 0, 评论 - 915, 引用 - 0
数据加载中……

《Eclipse从入门到精通》勘误表

@import url(http://www.blogjava.net/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); ------------------------------------------------------------------------------------------------------------------------

---------------------------------------        第二版的勘误表      --------------------------------------------
------------------------------------------------------------------------------------------------------------------------


  1. 封面广告的第一条“....,以最新的Eclipse3.2为写作版本”。
    年初结稿时是这样的,不过现在最新的版本是Eclipse3.3,软件更新真是太快了。
  2. 封面广告的第三条“重写了API,....”。应该为“根据新的API重写,...”
  3. 封底的折页广告。“第二批:”第四本“<<Eclipse开发从入门到精通(第2版)>>”。多了“开发”两字





------------------------------------------------------------------------------------------------------------------------
---------------------------------------        第一版的勘误表      --------------------------------------------
------------------------------------------------------------------------------------------------------------------------



对第一次印刷的勘误表

页码

错误位置

修改后的文字

   前言III,第四行未尾添加进如右所示文字  感谢网友ksafe、卢俊、yaskerkonhonlimux等校正了本书中的错误。

11

页中间

错: Edition for Eclipse3.0GA&3.0.1

对: V2.1.0 GA 2004.08.19

13

第一段的末尾

错:足够开发使用了。)

对:足够开发使用了;如果选 professional 项,则只能暂时使用几天)

27

从图 4.26 往下的第 4

错: Ctrl+Alt+O

对: Ctrl+Shift+O

31

3~7

错: Shift + Ctrl

对: Ctrl + Shift

(排版说明:将 Ctrl Shift 两单词交换一下位置,共五对)

54

7

错:要想得到完整的代码请查阅本书随书光盘中的例程。

对:要得到程序的 import 引用,或完整代码,请查阅随书光盘中的相应例程。

57

中上部有灰色背景的代码

重新调整

public   class  HelloWorld extends MouseAdapter{ // implements MouseListener
    public   static   void  main(String[] args) {
         new HelloWorld().createContent();
    }

    
private   void  createContent() {
        
……
        Text text1 = 
new  Text(shell, SWT.BORDER); 
        Text text2 = 
new  Text(shell, SWT.BORDER); 
        text1.addMouseListener(
this );
        text2.addMouseListener(
this );
        
……
    }

    
public   void  mouseDoubleClick(MouseEvent e) {
        MessageDialog.openInformation(
null , "", "Hello World");
    }
}

89

" 10.23" 右图下标

错: horizontalIndent=9

对: horizontalIndent=90

114

倒数第三行

错: TablItem

对: TableItem

(排版说明:紧挨着,共有两个 TablItem

144

中间(倒数第 20 行)

错:正数,则 obj1 移到 obj2 之间

对:正数,则 obj1 移到 obj2 之前

148

中间部份,本页第 17

错:

tv.remove(o);

/*

* 这里只是从界面表格将其去除掉。

* 如想从数据库里删除还得写相应的数据库删除代码。

*/

 

对:

tv.remove(o);// 从界面上删除

// 从数据模型的 List 容器中删除

List list = (List)tv.getInput();

list.remove(o);

// 如想从数据库里删除还要写相应的数据库删除代码

153

7

错:

ctv.remove(o);

对:

ctv.remove(o);// 从界面上删除

((List)tv.getInput()).remove(o);// 从数据模型的 List 容器中删除

153

17

错:

tv.remove(o);

对:

tv.remove(o);// 从界面上删除

((List)tv.getInput()).remove(o);// 从数据模型的 List 容器中删除

346

中间(第 17 行)

错:

super.dispose();

Context.getInstance().removeLogoffListener(this);

Context.getInstance().dispose();

对:

Context.getInstance().removeLogoffListener(this);

Context.getInstance().dispose();

super.dispose();

 

(排版说明:要保证三行向右对齐。原来的第三行后缩了几个空格,是错的。)

416

中下部(倒数第 11 行)

错: Lomboz3.1.0

对: Lomboz3.0.1

421

8

错:图 23.12 是安装完成后的 Eclipse 目录结构。注意: lomboz 目录下还有一个 eclipse 子目录。

对:

23.12 是安装完成后的 Eclipse 目录结构。

注意: lomboz 目录下还有一个 eclipse 子目录,这是采用 Link 式插件安装方法比较容易忽略的一个要点。

 

(排版说明:将“注意: lomboz 目录 ..... ”另起一行,并且加上灰色背景)

475

26.3 下的第一行

错: Hibernate-2.7.1c.zip

对: Hibernate-2.1.7c.zip


 


对第二次印刷的勘误表

   

书中页码

错误位置

修改后的文字

 

27页“图4.26”下10

错:空缺了步骤(3

对:将步骤的编号依次上移一位

 

116页倒数69

错:

/*

* 创建一个Table对象,在式样里设置它可多选,全列选择。

* 并用两条语句设置它显示表头和表格线

*/

 

对:

/*

* 创建一个Tree对象

*/

 

P346倒数第14

错:addLogonListener

对:addLogoffListener

 

448页倒数第五行错了。

错:

property是关键的属性,它必须对应于LogonAction类中的一个字段。

对:

property是关键的属性,它必须对应于UserForm(ActionForm)的一个字段

 

Feedback

#  2006-01-18 09:35 by 陈刚

P449 第10行
错:“和第24章的logon.js”
对:“和第24章的logon.jsp”

# re: 《Eclipse从入门到精通》勘误表  回复删除评论  修改评论

2006-01-18 09:37 by 陈刚
P458 第10行
错:“在Action程序中使用动态ActionFormt”
对:“在Action程序中使用动态ActionForm”

# re: 《Eclipse从入门到精通》勘误表  回复删除评论  修改评论

2006-01-18 09:40 by 陈刚
P468 倒数第19-22行,有两行重复。删除重复的倒数第19、20行

# re: 《Eclipse从入门到精通》勘误表  回复删除评论  

2006-03-02 07:21 by JetGeng
P332 最后一句:
IFolderLayout button = layout.createFolder("button",IPageLayout.BOTTOM, 0.8f, editorArea);

应该是
IFolderLayout button = layout.createFolder("button",IPageLayout.BOTTOM, 0.8f, "left");

# re: 《Eclipse从入门到精通》勘误表  回复删除评论  

2006-04-06 23:06 by 迟江
p431第二行
type="javax.sql.DataSourcer"/>

应为
type="javax.sql.DataSource"/>

# re: 《Eclipse从入门到精通》勘误表  回复删除评论  修改评论

2006-04-15 10:21 by 陈刚
感谢陈勇(chenyong301@***.com)的指出错误

错误:P231 的IEditorInput没有getEditorID()方法]

解决方法一:
(1)加一IEditorInput的子接口MyEditorInput,在该子接口加一个getEditorID()方法。然后将本书的所有EditorInput由implements IEditorInput改为"implements MyEditorInput"。

(2)最后在使用的时候这样
String key=""+list.getSelectionIndex();
MyEditorInput editorInput=(MyEditorInput)list.getData(key);
String editID=editorInput.getEditorID();


解决方法二:
利用IEditorInput中显得多余的getName,把ID放到里面,最后用下面语句得到edtorID---String editID=editorInput.getName();



# re: 《Eclipse从入门到精通》勘误表  回复删除评论  修改评论

2006-04-15 10:30 by 陈刚
感谢陈勇(chenyong301@***.com)的指出错误.

错误:P173页,在无子结点(如书中的“桂林”)下增加一个子结点时,无法展开。

错误分析:没有把数据加入到数据模型而导致的,当时只追求完成界面效果又没有做详尽的测试而导致这个BUG。在实践编程中,必须将数据加入到setInput的数据模型中,然后再refresh或add到界面。删除结点也同样应该从数据模型中删除。

解决方案(分三步):
(1)把最后三行
if (!tv.getExpandedState(obj))
tv.expandToLevel(obj, 1);
tv.add(obj, newEntry);//增加结点

改为如下(加一行,并换一下顺序)
((ITreeEntry) obj).getChildren().add(newEntry);
tv.add(obj, newEntry);//增加结点或者tv.refresh(obj, true);
if (!tv.getExpandedState(obj))
tv.expandToLevel(obj, 1);

(2) CountryEntity
private List cities; 改为 private List cities = new ArrayList();

(3)CityEntity
private List peoples; 改为 private List peoples = new ArrayList();

说明:第2、3步改动,是为了防止第1步程序中的((ITreeEntry) obj).getChildren()返回null,从而导致null.add(newEntry);这样的错误。


posted on 2006-04-24 18:26 陈刚 阅读(4528) 评论(25)  编辑  收藏 所属分类: Eclipse从入门到精通

评论

# 关于Eclipse3.12的问题  回复  更多评论   

我现在在xp系统下使用eclipse3.12+3.11语言包,根据《Eclipse从入门到精通》一书中关于查看源代码的内容,我在eclipse3.12+3.11语言包上操作,无法进行,提示有错误;然后,我在纯英文的eclipse3.12下进行操作,能够看到JDK的源代码;最后,再进入eclipse3.12+3.11语言包环境,现在可以在中文环境下查看JDK的源代码。(是否能告诉我是什么原因,时不时语言包的问题。)但是,我始终无法按照书上说的查看eclipse源代码,因为我的eclipse目录D:\eclipse312\plugins下只有org.eclipse.jface.text_3.1.2.jar和org.eclipse.jface_3.1.1.jar两个文件,没有org.eclipse.platform.source_3.01(或者是3.12等)的文件夹。
请教:我应该怎么作才能看到eclipse的源代码?
2006-04-26 10:53 | happy1973

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

@happy1973
http://www.blogjava.net/chengang/archive/2006/04/26/43241.html
2006-04-26 12:47 | 陈刚

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

52页:
最下面一行,"在主菜单选择"运行-运行方式-java应用程序"
应为:swt应用程序
2006-05-30 19:34 | ghb

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

书上第138页中:
new TableColumn(table,SWT.NONE).setText("姓名");
好像有错误,编译器提示说:
TableColumn的构造函数就没有带有table和SWT.NONE两个参数的形式,而且TableColumn类就没有setText方法,这是怎么回事?
我用的是Eclipse3.1。
2006-06-13 11:34 | 刘芳

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

不知陈兄准备何时推出此书的第二版呀,到时候一并改正这些错误,那就爽了!
2006-07-12 08:46 | anya

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

第4次印刷的第60页,常量的定义方法是直接加final前缀,而不是在类变量前面加final。static final定义的是所谓类常量。
2006-07-13 20:16 | lifaint

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

请问是否有第三次印刷的勘误表
2006-07-20 22:16 | 韦建勋

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

P69,14行改为(将toString()去掉): 
MessageDialog.openInformation(shell, null, "选择的Integer对象的值是"+selectObj);
2006-08-02 13:39 | 陈刚

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

陈刚 你好!
几个月前我在china_pub上订购的书,今天当我翻到hibernate内容时发现缺失了很多页。从468直接跳到了477页。不知道其他书是否有同样的问题出现。
2006-08-18 23:48 | bille_chen

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

忘记说了
印刷者:是北京国马印刷厂
装订者:北京市密云县京文制本装订厂
版次:2005年6月第一版 2006年1月第3次印刷
书号ISBN 7-302-11135-9/TP·7359
2006-08-18 23:54 | bille_chen

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

抱歉!
从468直接跳到了477页,缺失的部分在第492也后出现了。

51页 中部有错
原文:设置Shell的布局(3.5节将讲到布局的内容)
3.5节已是第三章的小节部分

印刷者:是北京国马印刷厂
装订者:北京市密云县京文制本装订厂
版次:2005年6月第一版 2006年1月第3次印刷
书号ISBN 7-302-11135-9/TP·7359
2006-08-19 00:08 | bille_chen

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

@bille_chen
我查了,我拿到的样书没有这个问题。可以去购书处要求换一本。
2006-08-21 09:53 | 陈刚

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

谢谢你的帮助,希望所有的作者都有你这样认真负责的态度。^_^
2006-08-21 20:31 | bille_chen

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

@bille_chen
你提的BUG下一刷会更正,碰到你们这样认真仔致的读者是作者之福,希望以后多提意见。
2006-08-22 08:43 | 陈刚

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

p301
12行: id int(6) 中的 " i " 使用了印刷体小写的 " L "
17行 18行同上,错误提示是在运行代码时弹出的。
p302
倒数第二行 public class lnsertAndselect{
也发生了同样的问题
2006-08-23 22:40 | bille_chen

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

我是新手,对一些命令串还不熟悉。也许是我错了,书中有很多地方把 " I " 印得象 小写的" L "。
2006-08-23 22:52 | bille_chen

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

@bille_chen
我检查了书和光盘中的程序,这是选用的字体导致了大写I和小写的l外形相同。所以尽量利用随书光盘,避免无谓的错误
2006-08-24 08:57 | 陈刚

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

444页web.xml代码中全是Web-INF
最好是用WEB-INF
2006-08-24 14:12 | luc

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

运行第7章的时候出现
Exception in thread "main" java.lang.Error: 无法解析的编译问题:
无法解析 MessageDialog
2006-09-08 17:14 | dodo

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

第22章插件开发NavigatorActionGroup方法中(第三次印刷349页)dialog.open()方法没有定义,请问如何解决?
2006-11-08 11:47 | micro

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

vitamin_dt@126.com指出了一个错误,以及一个问题的解决方法

--------------------------------------------------------
今天又发现一点有问题的地方,第一版158页的MyFilter:

return o.getName()=="陈刚";
perhaps it was supposed to be :
return o.getName().equals("陈刚");
--------------------------------------------------------

105页viewForm作容器,toolItem不能同时显示文字和图片以及107页例子直接run了之后,text域前三行半在layout()被重新调用之前被toolBar挡住无法正确显示(eclipse /swt/jface 3.2.2)都是因为viewForm在初始化完成后没有call layout(),据说3.0的时候不存在该问题。

只需要在coolBar初始化完成之后对viewForm layout()一次就可以解决那个问题,即在“至少有一个coolItem所占的位置确定”之后,加上viewForm.layout();便能正确显示。

SimpleEditor1.java解决办法同上(加上viewForm.layout();)。

2007-04-27 09:21 | 陈刚

# 为什么多国语言包安装失败呢  回复  更多评论   

我的系统是linux, 装的是eclipse3.2.1
我完全照书上做的,
把解压后的语言包(3.2.1版)拷到eclipse下的language文件夹里,
然后在eclipse 下的 links目录里建立 language.link文件
文件内容为 path=/peolple/zhou/program/eclipse/language

但是打开之后仍然是英文的, 唯一的区别是打开的时候慢了一些,似乎在加载什么东西

而且多国语言包里有好几种语言,eclipse怎么知道要加载那种语言呢?

谢谢!
2007-07-25 11:38 | zzz

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

language下是plugin和feature两个目录吗?
2007-08-03 15:32 | 陈刚

# re: 《Eclipse从入门到精通》勘误表   回复  更多评论   

第1版第2次印刷P356ConnectManager类中少了import语句:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
请问是这样的吧?
2007-11-25 10:52 | eclipse_beginner

# re: 《Eclipse从入门到精通》勘误表 [未登录]  回复  更多评论   

@eclipse_beginner
为了节省空间,书中的大部份import省去了。书中有说明。
完整的代码在光盘里。
2007-12-06 23:05 | my

只有注册用户登录后才能发表评论。


网站导航: