子在川上曰

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

《Eclipse从入门到精通》常见问题解答

附录 B  读者提问精选(第二次印刷)

起步篇

问:为什么我的 Swt-Designer 安装总是不成功?

答:将安装步骤要点简述如下:

1 )下载

笔者于 2005 8 月重新去 http://www.swt-designer.com/ 网站下载了用于 eclipse3.0.1 Swt-Designer 。现在它已经升级到了 4.1.0 GA 2005.07.09 ,本书中使用的是 2.1.0 GA 2004.08.19 。不过两个版本的安装和使用方法基本相同。

2 )安装

将下载 Swt-Designer 得到的 ZIP 包解压,然后将解压后得到的“ features plugins designer-delete.bat ”复制到 eclipse 的安装目录下。这时因为 eclipse 的安装目录已经存在 features plugins 目录,故而会弹出一个提示框问你是否覆盖目录,回答“是”。

如果还没出现第 48 页的“图 6.2 ”所示界面,把 eclipse 下的 configuration 目录删除( eclipse 在其中缓存了一些文件),再启动 eclipse 。注意:对于 Eclipse3.1 版,必须保留 configuration 目录下的 config.ini 文件。

3 link 式的安装

如果你选择第 2 章介绍的 link 式插件安装方法,则必须注意一点: Swt-Designer ZIP 包解压后, features plugins 并没有被包含在一个 eclipse 目录下, WEB 篇的 lomboz 插件安装也有同样的问题。正确的目录结构请参考第 421 页的“图 23.12 ”,在此页第八行已经有“注意”的提示,但还是有不少读者忽略了这一要点。

问:用 Swt-Designer 向导新建一个 swt 项目时,并没有自动生成 src 目录下的包“ package com.swtdesigner.ResourceManager ”和类文件 resourcemanager.java ,如第 48 页的图 6.4 ,请问怎么办?

答:本书所用 Swt-Designer 2.1.0 GA 版,如果你用 4.1.0 GA 版,则此新版本不会自动生成 src 目录下的包和类文件。其实这个自动生成的类文件,并没有太大用处,笔者在开发时常常把它删除掉。如果你想看一下此文件的代码,在随书光盘里有它的源文件。

问:在公司无法注册激活 SWT Designer ,提示“ Transaction failed:Internal Server Error ”。

答:很可能是公司网络做了限制的原因,比如把 SWT Designer 激活时的响应端口给封掉了。可以尝试以下解决方法:

1 )通过一台可以上网的电脑(比如家里的)将 SWT Designer 注册好,然后把协议文件 C:\Documents and Settings\ [UserName]\Instantiations.license 从你家里复制到公司电脑上。

2 )书中关于 SWT Designer 的内容只占很少(仅第 6 章),第 7 章之后的 SWT/JFace 例程是完全可以脱离 SWT Designer 而运行的。 SWT Designer 仅仅是一个界面辅助设计工具,它对 SWT 编程不是必须的。你可以参照随书光盘里的视频,不必用 SWT Designer 项目创建向导就能将光盘上的项目安装起来,并顺利运行书中的所有 SWT/JFace 例程。

问:按照书上注册好了,但还是出现了“ Activation is complete.Thank you.  

答:此句英文意思是“已完成激活”,也就是说你已经注册成功了。

问:执行 “cvs 提交 命令时,服务器报告错误,怎么办?错误信息如下:

myproject: cvs server: C:\WINDOWS\TEMP\cvs6C.tmp: No such file or directory

myproject: cvs [server aborted]: error diffing HelloWorld.java

答:这是由于 CVS 用户对 “C:\WINDOWS\TEMP\” 没有权限造成的,解决方法有如下三种:

1 )通过 CVSNT 控制面板“ Advanced ”选项卡下的“ Temporary ”,重新换一个此 CVS 用户具有读写权限的目录。

2 )用 Windows 管理工具把“ C:\WINDOWS\TEMP\ ”的读写权限赋予此 CVS 用户。

3 )将此 CVS 用户设成 WINDOWS 的超级用户。

问:第 33 页有一个命令“ cvs -d c:\cvsfile passwd -a giles ”。我的系统是 windows 2000 ,用户名为 i love you ,密码为 12345678 。请问就我的情况,上面这个 cvs 命令应该怎么样写才正确。

答:如果此用户名没有空格,则命令如下: cvs -d c:\cvsfile passwd -a iloveyou ,回车后再输入两次 12345678 。如果此用户名中有空格,则可以用双引号把用户名引起来,命令如下: cvs -d c:\cvsfile passwd -a "i love you" 。如果想更稳妥一些,建议在安装好 CVS 后,创建一个新的 windows 用户来给 cvs 用,注意:这并不要求你事先用此新 windows 用户来登录 windows

问:我下载的 JDK 1.4.2_08 版,书中所用是 1.4.2_06 版,可以吗?

答:完全可以。本书对 JDK 版不敏感,只要是 1.4.2 以上就行。理论上对 1.5 JDK 也支持,但本书不推荐。

问:请问 Eclipse3.1 的多国语言包有吗?

答: Eclipse 还没有发布 3.1 版的多国语言包。备注:笔者 2005 9 8 日做的检查。

SWT/JFace

问:我按照书中导入 JFace 的方法导入了 swt.jar ,编译没有任何问题,但是运行 SWT 程序时还是出现下面的异常,这是怎么回事?

Exception in thread "main" java.lang.UnsatisfiedLinkError: no swt-win32-3063 in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)

  另外我有一个关于 SWT/JFace 的疑惑:在 eclipse 环境下写的程序如果用了 SWT/JFace 包中的类,在 eclipse 下运行当然没问题,但是如果拿到一个只有 jdk 的环境下运行, jdk 中没有它所需要的 SWT/JFace 中的类,它还能运行吗?

回答:第一个问题参考书第 49 页的“导入 SWT 的原生库”。第二个问题参考第 21 章的“项目的打包与发行”,关键在第 274 页的第二行。

问:我在运行程序时出了 java.lang.NoClassDefFoundError 异常,怎么办?异常信息如下:

Exception in thread "main" java.lang.NoClassDefFoundError: org/osgi/framework/InvalidSyntaxException

答: NoClassDefFoundError 异常是因为找不到所需类引起的,对于 SWT 程序,则根本原因是没有配置好 SWT 类库。很多读者以为把 swt.jar 加入库引用, Eclipse 界面上没有错误就行了,但 SWT 程序在运行时还需要一些其他 JAR 包来支持,如上面提示的 osgi JAR 包。解决方法如下:

1 )参考第 26 页的中间段落有对库引用的解释。

2 )参考第 48 页底部的“注意”。

3 )参考随书光盘的 " 第二篇   SWT_JFace (6-16 )\myswt" 目录下的 SWT 项目的库引用 ".classpath" 文件,通过它你可以知道 SWT 项目所需要 JAR 包。

问:在练习第 53 55 页的例子时,我导入了 SWT 的原生库,但在调试过程还是出现了错误。错误信息如下:“ Fatal exception occurred.Program will exit

答:参考第 48 页或第 211 页的方法,先创建一个完整的 SWT 项目。注意:仅导入 SWT 的原生库是不够的,还要设置对 SWT 及其相关库的库引用等。

问:在书中第 50 页建立“ Application Window ”时,无法完成,提示如下: This wizard is  not supported in free version of the product . Swing Object construction is only available in the professional edition.

答:从出错提示“ Swing Object  ……”中的 Swing ,可知你用错了一个 wizard Swt-Designer free 版的只支持 SWT 不支持 Swing ,本书的内容是关于 SWT 的,和 Swing 无关。

问:为什么我写了一个继承自 Shell 类的程序( public class PuzzleFrame extends Shell )总是出错呢,出错信息为: Exception in thread "main" org.eclipse.swt.SWTException: Subclassing not allowed:

答: Shell 是可以被继承的,但 Shell 的父类 Decorations 有一个 checkSubclass () 函数,当其子类不符合此方法的检查规则时,就会抛出异常。因此不是简单继承 Shell 就行了的,还要做一些比较复杂的工作。此外,软件设计原则告诉我们:“聚合优于继承”,如果可以不通过继承 Shell 来达到使用它的目标,那就尽量采用简单的方式吧,至少笔者在项目开发中,从未通过继承的方式来使用过 Shell

问: Display.syncExec() Display.asyncExec() 的区别,两者有什么不同?

答: syncExec() asyncExec() 方法是外部线程调用本地线程的桥接方法。 syncExec 是必须等待调用结束后才可以进行到后面的流程,而 asyncExec 是调用的线程无需等待就可以进行后面的流程。

问: MessageDialog.openInfomation ,我想调整这个窗口的大小

答:不妨改用 MessageBox 类,参考第 195 页。

插件开发篇

问:书上有查找和打开编辑器的方法,但有没有得到一个编辑器对象 EditorPart 的方法?然后对这个对象可以进行操作,例如传一个参数。

答:

1 )第 231 页的第五行的 editor ,它就是一个编辑器( EditorPart )对象。

2 )关于给编辑器传参数,这里介绍一种间接的方法:给 EditorInput 对象增加一个属性字段,而通过 EditorPart 类中的 init 方法(第 228 页第一行),就能得到传入的 EditorInput 对象,从而取出 EditorInput 对象所携带的数据。这样数据参数用 EditorInpurt 做中间载体,就传给了 EditorPart 编辑器。

问:如果我的程序不是插件,而且传统应用程序。第 18.8 节所讲制作帮助的方法,对于我来说就无效了,请问我该如何来制作帮助呢?

答:给传统应用程序制作帮助比较麻烦,建议你看看 Eclipse 中最新的 RCP 开发, RCP 它结合了插件和传统应用程序的优点:实际上是插件的开发方式,表面上看起来却象一个完完全全的传统应用程序。

问:第 300 页的程序出现以下错误:

java.lang.NoClassDefFoundError: org/aspectj/lang/Signature
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)

答:错用了连接包 mysql-connector-java-3.1.10-bin-g.jar ,应该用 mysql-connector-java-3.0.17-ga-bin.jar

WEB

问:第 24 章说到把 j2src 的文件输出到 "hello\WEB-INF\classes" 下,把随书光盘上第 22 章的 sms\src 目录下的文件拷到相应目录就行了?我发现光盘的 "hello\WEB-INF\classes" 目录下并没有任何文件,我有点迷惑 *.class 文件到底应该放在哪里?

答:如果照第 433 页的“图 24.1 ”所示做好了设置,则 eclipse 会自动将源文件编译成 *.class 文件,并输出到“ hello\Web-INF\classes" 目录下。所以随书光盘上没有必要在 "hello\Web-INF\classes " 目录下保留着 *.class 文件。

问:我想在 Eclipse 中加入 Struts ,看到第 25 章说把 lib 下的 *.jar 复制到 hello/WEB-INF/lib 目录下。我没有看过本书的任何一章,不知道这个 hello/Web-INF/lib 的绝对路径是多少?

答:参阅第 425 页的“图 23.20 ”,绝对路径是 c:/elcipse/workspace/hello/Web-INF/lib 。另:本书 WEB 篇的每章都有前后承接关系,建议从第 23 章看起。

问:在搭建 J2EE 开发平台中,是否要安装 J2EEsdk

答:不需要安装。

问:我看有的书讲 Hibernate 的安装,并没有提到要使用 Tomcat 等服务器,不知是什么原因?

答: Hibernate 并不是只能用于 B/S 结构的 WEB 开发,对于 C/S 结构的应用程序也一样可以用。也就是说, Tomcat WEB 服务器和 Hiberate 没有必然的依赖关系。

问:第 450 页的 LogonAction.java 与光盘上的代码不一致

回:此项目的代码按照开发进度,打成了不同的 CVS 版本(参考第 416 页倒数第二段的说明)。光盘代码上显示的都是 CVS 上的最终版本,当然和书上的之前版本的代码不同了。建议你先将光盘“ cvsfile ”目录安装到你的 CVS 上(安装参见光盘所带视频),这样就能从 CVS 上检出前一个版本的代码了。

问: JSP 程序连接 MySQL 数据库出错,出错信息如下:

HTTP Status 500 -
……(省略)

root cause
Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:106)

答:从出错信息中的“ Perhaps JAVA_HOME does not point to the JDK  ”,可知原因是找不到 JDK ,所以 JSP 无法编译。估计是你在安装 Tomcat 时步骤有误,检查一下第 419 的“图 23.7 ”这一步。如果还不行,那就设置一个指向 JDK 目录的 Windows 环境变量 JAVA_HOME

问:我按第 23 章成功安装了 Tomcat5.0.28 lomboz ,但新建了一个 J2EE 项目后,怎么不能在项目中启动 Tomcat 了,控制台的错误信息如下:

2005-8-3 10:17:18 org.apache.coyote.http11.Http11Protocol init
严重 : Error initializing endpoint
java.net.BindException: Address already in use: JVM_Bind:8081
2005-8-3
10:17:18 org.apache.catalina.startup.Catalina load

答:注意到异常信息中的“ Address already in use: JVM_Bind:8081 ”,得知 8081 端口已经被其他程序占用了。可能是你启动了两次 Tomcat ,或者是 8081 端口被其他 WEB 软件占用了。


附录C  读者提问精选(第三次印刷)

问:安装Oralce后,Eclipse无法启动,总报找不到jre的错误。
答:Eclipse只有一个依赖,就是JRE(JAVA运行时环境)。Oralce自带了一个jre1.3,所以可能会对我们装JDK的jre1.4型成冲突,Eclipse不知道要定位哪一个jre。解决方法有如下三种:
(1)在windows环境变量里,创建变量JAVA_HOME= C:\jdk,并把Path变量中c:\jdk\bin的位置提到前面
(2)运行Eclipse时加上参数:eclipse -vm c:\jdk\jre\bin\javaw
(3)将c:\jdk的jre目录复制到C:\eclipse3.0.1\eclipse目录下

问:我安装的是最新版本eclipse3.1.1,按照书上的操作方法把多国语言包安装后,已经实现大部分菜单汉化,但是还有一些菜单没有汉化。然后我又把configuration文件夹删除掉,重新打开eclipse却出现错误,Eclipse无法启动了。
答:
(1)学习本书建议使用eclipse3.0.1版。
(2)eclipse3.1.1的语言包已经分成了两个,你可能只安装了一个,所以汉化不完整。
(3)eclipse3.1.1不能删除configuaration目录,里面的config.ini必须保留。也可以在运行eclipse时加一个clean参数,如:eclipse.exe -clean

问:我在自己的电脑安装了CVSNT,我也可以用Eclipse连上它,但我的同事却连不进来。为什么?
答:连不上CVS的原因有很多种,你的情况很可能是Windows XP防火墙的原因,你关掉防火墙再试试吧。
问:行了,我把XP的防火墙关掉后,我同事可以连进来了。不过,不用防火墙,那电脑就容易中毒,有更好的解决方法吗?
答:防火墙是防黑客的,不是防病毒的。解决方法还是有的,你可以在防火墙的设置里,把CVS服务的端口号打开。具体操作如下:控制面板->高级->设置(T)...->服务->添加(D)...,打开"服务设置"窗口后,"服务描述"填"cvsnt服务";"计算机名称"填你的计算名或IP;服务的外部内部端口号填2401。

问:用Canvas显示图片,如果图片大,怎么使用滚动条?
答:new Canvas(shell, SWT.BORDER|SWT.H_SCROLL|SWT.V_SCROLL);

问:在运行Java应用程序时,可以连上数据库。但当运行插件时(即"运行时工作台")却连不上数据库了,不知为何?
答:有可能是插件没有找到mysql的jar连接包的原因。注意P299最后一段的说明。

问:我在"连接MySQL的测试程序"时出现了下面的错误,会不会是版本冲突的错误:
java.sql.BatchUpdateException: Syntax error or access violation message from server: "Unknown table engine 'lnnoDB'"
答:不是版本的错误,是你写的"lnnoDB"有问题,它的第一个字母应该是字母I(大小写不区分),不是数字1,也不是字母L。以后实践时最好复制随书光盘上的代码,以确保正确。

问:如何在RCP程序启动时打开默认的Edit,该在那里加代码?
答:WorkbenchWindowAdvisor的继承类,改写它的postWindowOpen方法

问:在Text上加了addVerifyListener后,就不能将字符复制到text中了。请问有什么好的方法既可以实现对输入的校验,又可以实现对复制的数据进行校验。
答:你想将字符以复制的方式输入到Text中,那么就不要用addVerifyListener这种在输入时就做实时检查的方式。可以选择在最后提交时,再去校验数据的方式。

问:我想将浏览器嵌入到Ecplise,请问怎么做?
答:用org.eclipse.swt.browser.Browser类。

问:有的可视化组件在SWT Desiger找不到,ScrolledComposite。但是写程序可以用它,就是没法像button按扭直接拖放,是不是要自己定制一个这样的组件用?
答:SWT Desiger中只包含了一些常用的组件,如书中所强调,一定要学会脱离SWT Desiger这类UI设计工具自己手工写界面代码。

问:我在导入随书光盘中的项目后,在运行时提示:"类路径引用的归档 D:/Eclipse/eclipse/language/eclipse/plugins/org.eclipse.core.runtime.nl1_3.0.1/nl1.jar 不存在。"请问是怎么回事?如何运行光盘中的实例?
答:出这个错误,可能是因为
(1)你没用和本书相同版本的Eclipse,或者Eclipse安装目录和本书的不一样
(2)你没有装Eclipse语言包,或者Eclipse语言包安装目录和本书的不一样
解决方法:把Eclipse的构建路径中的对org.eclipse.core.runtime.nl1_3.0.1/nl1.jar重新指定到实际的位置就可以了(构建路径在哪里,请参考本书P444图25.1)




    你好,看完你写的这本《 Eclipse 从入门到精通》 , 感觉受益匪浅,此外我想请教你一个问题,如果做插件项目是否可以打包成 jar 文件来直接运行,一定要在 Eclipse 环境下点击运行 Eclipse Application 来运行吗?希望你能及时给予我答复,非常感谢你!

可以。直接将目录压缩成 jar 包就成了。 zip 格式

 

请问:

     在《 Eclipse 从入门到精通》第 134 页中的 PeopleEntiry.java 中的代码

public Long getId() {return id;};

public void setId(Long long1) {id = long1;}

public String getName(){return name;}

public void getName(String string) {name = string;}

这些是必须要人工一行一行的输入,有没有现成的工具可以生成这些代码?

谢谢!

解决方法见图

image001_060609.jpg

 

 

    在网上看资料说 eclipse 是调用本机的窗口组件,界面比 awt swing 要漂亮,可我在编程后发现其界面跟 awt 一样,连 swing 都赶不上,而且是导入了 swt 的原生文件的,对此问题甚有疑惑,望老师百忙中抽空看看,帮我解决这个困惑,谢谢!

 

                                祝工作顺利!

你在 windows 下运行的吗, eclipse 本身的界面就是用 SWT 做的,看 Eclipse 就知道 SWT 的界面效果是怎么样的。

 

 

在贵书《 Eclipse 从入门到精通》 P208 最后一行写道“插件和 Eclipse 融合在一起,原 Eclipse 的一些菜单和工具栏是无法完全屏蔽的”,我目前遇到一个类似的问题。

 

 

我用 Eclipse 3.0.2 RCP 开发的产品,作为插件嵌入 Eclipse 后,菜单和 Eclipse 的混在一起 ( 我的 menu 实在 plugin.xml 中实现的 ) ,比如 Eclipse 有个 File 菜单,我的也有个 File 菜单。我们希望点到我的 perspective 后,只显示我们自己的菜单。最新的 Eclipse3.1.2 对此有所改进吗?

 

能否对此给予指导。

 

谢谢。

如果使用 RCP 后,就可以将菜单和工具栏是无法完全屏蔽。

 

 

陈刚

    你好,我是一位读者,编写了一个数据库程序,在用 eclipse 打包的时候编写了 manifest.txt 文件,其中包含 Manifest-Version Main-Class Class-Path 的内容,但打完包后在 MANIFEST.MF 中却没有 Class-Path 的内容;另外,程序中要访问 excel ,我采用了 jxl 包,在 eclipse 下运行良好但是打完包后却不能访问 excel 了是不是缺少了 Class-Path 中的内容造成的?

                                                       急等!

                                                             谢谢

你的情况是缺乏 classpath 的设置。应该是打包过程中有一步出现了错误,请您参照 P274 页的步骤,严格按步骤执行操作。

 

 

您好:

    我在做一个分词词典,这是我的毕业设计。

    可是我用 swt 的各种控件时需要用到一些方法函数可是我不知道每个控件都有那些方法怎么用,

1 。请问如何察看每个控件的方法和方法如何使使用?

2 text 控件中已经有内容了,用什么方法可以把 text 中的内容一个字一个字的提取出来???

   1 。比如查看控件的方法:参考快捷键 ALT+/ 的使用

    2 text.getText() ,得到全部的内容,然后自己再分解成一个字一个字。

 

 

陈刚 你好:

   第一次,接触E clipse, 有一些问题,可能需要你的帮助.

  1:在 ToolBar 中加的按钮,怎么处理按钮图片的存放路径?书上写得不清楚.

   例子是这样的:

   ToolItem  toolitem2  = new ToolItem(toolbar,SWT.PUSH);

        toolitem2.setText(" 清除 ");

        toolitem2.setImage(new Image(display,"icons/Remove.gif"));

icons 是文件夹吗,后面的是G if 格式的图片.

我是这样认为的,原代码根目录创建一个 icons 文件夹,把图片放进去了,编译找不到文件位置报错!!

希望能帮助我解决这个问题(尽量详细一些):

  2:关于E clipse 最新的技术,能否介绍一点,介绍几个讨论的网站.

 

在此表示感谢!

icons 是文件夹,位置请参考光盘上的示例。

http://www.eclipseworld.org/bbs/index.php  是一个国内最大的 Eclipse 网站

 

 

 

先生:

 

    您好!

 

    我是刚到高校任教的老师,现在在开发一个信息管理系统,由于整个项目由我负责,因此决定使用 Eclipse 环境下面 J2EE 解决方案,找到您的《 Eclipse 从入门到精通》书已经大概翻阅了一遍,但对 Eclipse 下面的 J2EE 框架开发的具体操作还是不怎么清楚,虽然理论的准备已经比较多了。所以特向您请教一下,在 Eclipse 环境下面 J2EE 的开发环境具体怎么搭建呢,都用到那些插件呢? 我打算用 IBM WebSphere Application Server Community Edition 的服务器,在 Eclipse 下面是否支持他?另外如果直接用 IBM WebSphere Application Developer 下面开发出来的东西能不能直接部署到 WASCE 服务器上面呢?

 

    还有一个问题想请教您,就是我把信息系统做成 B/S 的架构,那么怎么在网页中布置界面呢?特别是怎么支持对 Windows Office 类文档的操作呢?

    万分感谢!

 

                                                                                                                朱兆辉                                                                                                             

书中的 WEB 篇讲解了环境搭建的全过程,如果你用” IBM WebSphere Application Server Community Edition “,那么你可以不用 Eclipse IBM 有一款 WSAD 的开发软件 ( 也就是你说的 WebSphere Application Developer)

 

对于 " IBM WebSphere Application Developer 下面开发出来的东西能不能直接部署到 WASCE 服务器上面 " 我不是很清楚。不过我很确信用 ant maven ,即使是用记事本来开发 java ,一样可以实现全自动的布署 ( 对任何服务器,包括 WASCE)

 

“怎么在网页中布置界面呢?” 界面设计取决于你们客户的需求。

 

“怎么支持对 Windows Office 类文档的操作” 我不知道你要做什么样的操作,如果只是读写,那么 POI 可以实现,在我的书中有 POI 的介绍。

 

我不知道你的“信息管理系统”具体的情况,但我这里可以给你一个备选的方案框架。

JBOSS 替代 IBM WebSphere Application Server Community Edition

Eclipse+Lomboz 替代 WSAD

数据库存储层用 Hibernate

结合 Spring 框架来简化代码

WEB 层用最流行的 struts

如果你想有更在丰富的界面效果,用 AJAX( 一种 JavaScrtip+XML WEB 界面架构 )

 

我想这种方式是现在比较流行的选择,你也可以 google 出很多相关资料,最后祝你们项目顺利

 

 

 

  您好!我注册 swt designer 时,按照您书上所述选择 swt designer,free 两项,但给我的激活号却是专业版的。并且 14 天到期后无法再申请免费版的注册号了,请问会是什么原因呢?如何解决?(请尽快回复,多谢)

我用的是 Eclipse3.1 Designer_v4.2.1_for_Eclipse3.1.zip

C:\Documents and Settings\ [UserName]\Instantiations.license 文件删除后再试试

 

 

我下载的 hibernate 都不能用,不知道是怎么回事,总是下载不对

能不能给我一个下载的地方,或者有时间能在线传给我就更好了,呵呵

我QQ2327****,

光盘的“第四篇   WEB 开发篇 (23-26)\myweb\hello\WEB-INF\lib ”目录已有

我是北京邮电大学软件学院的研究生,正在读您写的《 eclipse 从入门到精通》,感觉得您写得很细致,我从中受益匪浅。不过,我想问问,现在国内一般的公司如果搞企业信息化软件的开发,用 java 的占多大比例,另外,如果采用 java ,那么用 eclipse 的又占多大的比例呢? java 以及 eclipse 的前景如何呢?          希望您在百忙之中能够回答我这个问题,我希望得到您的帮助。谢谢!

学好 JAVA 找工作肯定不是愁的了, borland 公司下一版的 jbuild 将做成 eclipse 的插件形式,所以前景也就不必说了

另外,能不能用您的经验帮我简单规划一下怎样把 java 学好。我还有半年就要去工作了。谢谢!

建议你去找家公司实习,这样你自然就能找到你的方向了

我走的路是这样的: java 基础语法 ->JSP 、数据库、 weblogic-> 设计模式 ->struts hibernate eclipse/swt

 

 

 

  陈先生您好:

        我在按装完 SWT Designer 后进行注册激活时,在 Product Registration and Activation 窗口填写好相关注册信息后。可 Product Registration and Activation 窗口的下一步按扭却始终处于没激活状态。无法进行下一步的操作。且 Product Registration and Activation 窗口下显示 Please enter your first and last name ,不知如何解决?谢谢!       

名字中间加一个空格

 

老师你好:

  大作 <<Eclipse 从入门到精通 >> 拜读过以后,感觉受益匪浅,但有一问题请教。

  在此书的后面印刷的例子窗口显示感觉好像与我们自己做的不一样,窗口的样式很豪华,感觉很好,但不知如何实现?请在百忙之中给以解答。

 

                 谢谢

                 祝好

这里因为我用了 XP 的“主题”,而 eclipse 会自动使用 XP 的“主题”式样。我用的是 XP 的第三方的“苹果”主题,所以看起感觉好一些

 

 

老师:

   你好!谢谢抽空为我解疑!

   我在用 SWT Designer 时,运行时产生了如下的错误:

 

   Exception in thread "main" java.lang.UnsatisfiedLinkError: no swt-win32-3139 in      java.library.path

 at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682)

 at java.lang.Runtime.loadLibrary0(Runtime.java:822)

 at java.lang.System.loadLibrary(System.java:992)

 at org.eclipse.swt.internal.Library.loadLibrary(Library.java:123)

 at org.eclipse.swt.internal.win32.OS.<clinit>(OS.java:18)

 at org.eclipse.swt.widgets.Display.<clinit>(Display.java:125)

 at test.Hello.main(Hello.java:15)

 

  我导入了“ SWT 的原生库”,但不知导入的正不正确?我用的 SWT Designer v4.1.1 Eclipse 3.1.1 。按照你书上说的路径找不到 swt-win32-3063.dll (可能版本不同而不同),然后我导入的是 ..\eclipse\plugins\com.swtdesigner_4.2.0\os\win32\x86\SWTDesigner.dll

但还是不行,不知哪里出问题了 ?

新版把目录压缩成了 JAR 包,你把 org.eclipse.swt.win32.win32.x86_3.*.*.jar 导入就行了,里面包含了 DLL 文件,不必把这个 DLL 再取出来

> 

> 陈刚

>   您好,我买了您的《 eclipse 》的书,我在注册 Designer_v2.1.0_for_Eclipse3.0

> ,我按照的就是您在视频中所用的方法,但是总是报错: internet server error ,但

> 是我用它自带的测试网络连接时,连接又是成功的。请问这个问题怎么解决啊!?

换个时段试试,也许是对方服务器太忙的原因

 

> 陈先生:

>    你好,我购买了你的《 eclipse 从入门到精通》,在根据你的视频配置 cvs 的时候我

> 出现了问题,我的系统是 window xp, 我用的软件都是你说上所说的。

> 在使用 cvs 时共享项目时出现套接字异常: Connection reset? 到底是哪里设置有问题

> 阿。

> 能解答一下吗?谢谢

xp 的防火墙关了,再试试

 

> 我在运行第8章SWT常用组件的时候, button1.java 出现运行时错误,单击按钮以后就死机

> 

> CPU占用率100%

> 

>   java.lang.NoClassDefFoundError: org/eclipse/core/runtime/IStatus

>   at com.hpcau.test.Button1$1.widgetSelected(Button1.java:23)

>   at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)

>   at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)

>   at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)

>   at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3080)

>   at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2713)

>   at com.hpcau.test.Button1.main(Button1.java:33)

> 

> 我用的是Eclipse 3.1.1 

> 请帮忙看看是什么原因,谢谢

> 

> 谢谢:)

有些导入包没有导入,参看随书光盘的相应项目的 .classpath 文件

 

 

你好:

很抱歉要麻烦你。

刚学习 java ,上周买了本你著的《 Eclipse 从入门到精通》,照猫画虎之,水平很差,不知怎样给 TreeViewer 树中不同类型的结点添加不同的右键弹出菜单,求助与你,劳驾了。

树的一级结点是 Server 类型,二级结点是 SP 类型。( config.xml 有配置描述)

想让一级结点的右键弹出只出现 “发送” / “注册 SP / “启动” / “停止”

二级结点的右键弹出只出现 “发送” / “注销 SP

下面是我的一个实际项目的示例

/**

 * @ 作者:陈刚

 */

package com.wxxr.management.admin.console.jmx.action;

 

import org.eclipse.jface.action.IAction;

import org.eclipse.jface.action.IMenuListener;

import org.eclipse.jface.action.IMenuManager;

import org.eclipse.jface.action.MenuManager;

import org.eclipse.jface.action.Separator;

import org.eclipse.jface.viewers.IStructuredSelection;

import org.eclipse.jface.viewers.StructuredViewer;

import org.eclipse.jface.viewers.TreeViewer;

import org.eclipse.swt.widgets.Menu;

import org.eclipse.ui.actions.ActionGroup;

 

import com.wxxr.management.admin.console.jmx.model.ConnectionNode;

import com.wxxr.management.admin.console.jmx.model.ConnectionSetNode;

import com.wxxr.management.admin.console.jmx.model.JndiConnectionNode;

 

public class MyActionGroup extends ActionGroup {

    private TreeViewer tv;

 

    public MyActionGroup(TreeViewer treeViewer) {

        this.tv = treeViewer;

    }

 

    private IAction createConnectionAction;

    private IAction connectAction;

    private IAction disconnectAction;

    private IAction refreshAction;

    private IAction deleteAction;

    private IAction propertiesAction;

 

    private void makeActions() {

        createConnectionAction = new CreateConnectionAction(tv);

        connectAction = new ConnectAction(tv);

        disconnectAction = new DisconnectAction(tv);

        refreshAction = new RefreshAction(tv);

        deleteAction = new DeleteAction(tv);

        propertiesAction = new PropertiesAction(tv);

    }

 

    public void fillContextMenu(MenuManager mgr) {

        MenuManager menuMgr = (MenuManager) mgr;

        makeActions();

        /*

         * 生成 Menu 并挂在树 Tree

         */

        menuMgr.setRemoveAllWhenShown(true);

        menuMgr.addMenuListener(new IMenuListener() {

            public void menuAboutToShow(IMenuManager manager) {

                MyActionGroup.this.fillContextMenu1(manager);

            }

        });

        Menu menu = menuMgr.createContextMenu(tv.getControl());

        tv.getControl().setMenu(menu);

        //        getSite().registerContextMenu(menuMgr, treeViewer);

 

    }

 

    private void fillContextMenu1(IMenuManager manager) {

        //Object obj = SwtUtil.getFirstSelection(tv);

        Object obj = getFirstSelection(tv);

        if (obj instanceof ConnectionSetNode) {

            manager.add(createConnectionAction);

        } else if (obj instanceof ConnectionNode) {

            manager.add(connectAction);

            manager.add(disconnectAction);

            manager.add(refreshAction);

            manager.add(new Separator());

            manager.add(deleteAction);

            manager.add(new Separator());

            manager.add(propertiesAction);

            //

            boolean b = ((ConnectionNode) obj).isConnecting();

            connectAction.setEnabled(!b);

            disconnectAction.setEnabled(b);

            refreshAction.setEnabled(b);

            //

            propertiesAction.setEnabled(obj instanceof JndiConnectionNode);

        }

    }

 

    private Object getFirstSelection(StructuredViewer viewer) {

        IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();

        return (selection).getFirstElement();

    }

}   

 

 

关键点在这里 ConnectionSetNode ConnectionNode 就是树上的两个不同的结点

        if (obj instanceof ConnectionSetNode) {

            manager.add(createConnectionAction);

        } else if (obj instanceof ConnectionNode) {

            manager.add(connectAction);

            manager.add(disconnectAction);

            manager.add(refreshAction);

            manager.add(new Separator());

            manager.add(deleteAction);

            manager.add(new Separator());

            manager.add(propertiesAction);

            //

            boolean b = ((ConnectionNode) obj).isConnecting();

            connectAction.setEnabled(!b);

            disconnectAction.setEnabled(b);

            refreshAction.setEnabled(b);

            //

            propertiesAction.setEnabled(obj instanceof JndiConnectionNode);

        }

 

 

 

> 您好!

>    阅读了您的大作《 Eclipse 从入门到精通》,现有一个问题请教。第七章的第一个

> 例子,我就调不通。事件的“命名内部类”写法,一直报错。如下:

>    我刚开始接触 JAVA ,太菜。麻烦您百忙之中指点一下。

>    谢谢!

> 

>package com.swtdes;

> 

>import org.eclipse.swt.SWT;

>import org.eclipse.swt.widgets.Display;

>import org.eclipse.swt.widgets.Shell;

>import org.eclipse.swt.widgets.Text;

>import java.awt.event.*;

>import org.eclipse.jface.dialogs.*;

> 

> 

>public class HelloWorld {

> 

>   private static Text text1;

>   /**

>   * Launch the application

>   * @param args

>   */

>   public static void main(String[] args) {

>       final Display display = Display.getDefault();

>       final Shell shell = new Shell();

>       shell.setSize(500, 375);

>       shell.setText("SWT Application");

>       //

>       shell.open();

>       text1 = new Text(shell, SWT.BORDER);

>*** (出错处)    text1.addMouseListener(new MyMouseDoubleClick() );

>       text1.setText("Hello World");

>       text1.setBounds(85, 220, 165, 22);

>       shell.layout();

>       while (!shell.isDisposed()) {

>           if (!display.readAndDispatch())

>               display.sleep();

>       }

>   }

>   private static final class MyMouseDoubleClick extends MouseAdapter{

>       public void  MyMouseDoubleClick(MouseEvent e){

>          MessageDialog.openInformation(null,"","This is a test" );

>       }

>   }

>}

>===

>*** 处:类型 Control 中的方法 addMouseListener(MouseListener) 对于自变量

>(HelloWorld.MyMouseDoubleClick) 不适用 .

有些导入包没有导入,参看随书光盘的相应项目的 .classpath 文件

 

 

>final Text text1 = new Text(shell, SWT.BORDER);

>text1.addMouseListener(new MyMouseDoubleClick() );

>text1.addMouseListener(new MouseAdapter(){

>      public void mouseDoubleClick(MouseEvent e){

>   MessageDialog.openInformation(null,"","Hello World!This is example!");

>           }

>          

>       });

> 

> 以上代码种:总是提示: MouseAdapter 不能解析为类型

> 

> 麻烦您解答。

有些导入包没有导入,参看随书光盘的相应项目的 .classpath

 

 

您好,陈刚先生:

我是您的新读者,以前我一直在用 jbulder 开发 java ,由于现在

eclipse 开发是免费的,又是支持无限扩展的开发工具,很是喜

爱。刚在网上买到您的书,就迫不及待的开始研究了。

然而在我安装 swt designer2.1.0 的时候还是发现了错误:

具体如下:

您在视频录象和网站上提供的连接 swt designer2.1.0 ,当下载

完并解压后,只是出现了两个文件( plugins designer-delete

plugins 文件中又出现了三个文件( com.swtdesigner.fragment.jdt.core_2.1.0,

com.swtdesigner_2.1.0 com.swtdesigner help_2.1.0 ),如果把 plugins

designer-delete 这两个文件直接复制到 c:\eclipse 目录下,在打开 eclipse

和视频录象里导入的 designer 这个插件是不一样的。

如果在 http://www.swt-designer.com/ 这个网站上下载

(SWT Designer v3.0.0  Edition for Eclipse 3.0 & RAD 6.0

2004.12.08) 这个插件就会和您在视频里演示的一样了。

我觉得也许是第一版的书和现在相差半年,版本可能有些变动,但是无论如何

您所提供的 swt designer2.1.0 要想和您视频里演示的一样那就只能下载

SWT Designer v3.0.0  Edition for Eclipse 3.0 & RAD 6.0

2004.12.08 这个版本了,希望您在百忙当中按照我说的实验一下,如果我说的

确实没错,请您在这本书第三次印刷时能够纠正这一错误,让以后的读者可以

少走弯路,我本着与您交流的态度给您提了这一建议,很喜欢您出的这本书,

写的很好,希望您今后能够多出一些这种条理清晰,结构严谨,态度认真负责的

关于 java 前沿技术的书籍,也请您在试验完后能给我回一封邮件,谢谢!

    读者:刘磊

对,你说的没错。视频由于是后期录制的,所以没有注意到保持 swt designer 版本同步。谢谢你指出错误,下次改进。

 

你写的书的确不错 !

2 个问题请教你 :

19 章当中 , 我把你的 myplugin2 代码烤到本机上运行 , 但发现

view1 view2 不在透视图当中显示啊 , 而且 ,view 也不是在底部显示啊

这是什么原因啊

夏军

thanks u

view 也不是在底部显示的错误已更正,参看 http://www.chengang.com.cn/  的堪误表

 

陈刚

     您好!我现在在学习 SWT ,有以下几点问题,希望您能给我解答。

    

     问题:

     1 ):我现在用的是 Eclipse3.1 。怎么导入 SWT 原生库。

     2 ):我按您的方式注册了,可是为什么 SWT VE 界面顶端有 SWT Designer Pro Evaluation - 13 Days Remaining.

     3 ):怎么将写好的 SWT GUI 应用程序做成 .EXE ,在程序可靠的前提下怎么保证 .EXE 能执行,需要注意那些。

1 新版把目录压缩成了 JAR 包,你把 org.eclipse.swt.win32.win32.x86_3.*.*.jar 导入就行了,里面包含了 DLL 文件,不必把这个 DLL

取出来。

2 )不要选择 pro 版,而是选择 free

3 )看书中打包一节

 

 

>    我按照你编著的书《 eclipse 从入门到精通》里的要求安装了 eclipse3.0.1 Designer_v2.1.0_for_Eclipse3.0, 启动之后在注册 swt 的过程中,在填写完注册的基本信息和 email 地址之后,这个注册界面中的“ next ”按钮和“ finish ”按钮始终灰显,不能单击。这就造成了不能注册,请问是什么原因?麻烦你了。谢谢。

姓名之间加一个空格

 

先生:

你好!

我是一名大四的学生,明年6月即将毕业.我对 Java 很有兴趣,但是我觉得它牵涉的知识比较多,并且实

际岗位的要求比较多.我想找一份 Java 的工作,却发现好有困难,现特意向你咨询你对毕业生找 Java 工作

的看法,还请指教.

另外,最近在拜读你的大作 <<Eclipse 从入门到精通 >> ,觉得这本书非常好,在此以表感谢.我想问一下:

现在,对于书中所涉及的软件,我都下载最新版本可以吗?它们兼容吗?谢谢! 

主要是配置的方法不能兼容,而且做为学习也没有必要下载最新版。

 

陈刚 你好:

    您在《 Eclipse 从入门到精通》一书中讲述了“让用户电脑不必安装 JRE 环境”,对这个问题我还有些深入的话题。

    JRE1.3 来说,它的 lib 里仅有 rt.jar i18n.jar sunrsasign.jar 。对于某个 Application 来说,不会用到的 *.class 。因此是否可以把多余的 class 文件和包删除掉而做成一个定制化的 JRE 环境?有没有这方面的工具?

理论上来说是可以的,但由于我们并不知道各 class 类以及 jar 包之间的依赖关系,所以实际上很难现实手工分离精减。我也没有听说有这方面的工具。

 

 

designer 注册得不到注册码,有没有通用的,一个号可不可以多人用

我没有 通用的的注册码 。一个号应该不可以多人用。


老师

     你好!

     我是读者单点,我正在给自己的一个课题设计作界面,然后我不知道当使用 MenuManager ToolManager 来管理菜单和工具栏时,如何给 Menu TooBar 里的 Action 设置诸如 子菜单 分隔栏 居左 居中 等样式。如何用一个给 CoolBar 里面的各个 toolBar 添加 Action

    还有,我是从您那本书上开始入门界面编程的,所以我对于何时要用到 refresh() update() 等刷新方法不太理解 ,或者说没有一个概念,你能给我大致描述几个点吗?

    然后,用 Button. setImage() 方法,在按钮的图像周围总是多出来灰色的空白区域(很难看),能否让图像正好覆盖住按钮呢?

    很不好意思,一些简单的入门问题都要麻烦陈老师你,如果有可能的话,你那边有 SWT API 之类的说明文档能让我当字典查吗。然后对于书上的难点问题,我再来请教陈老师你!

1 TooBar ToolManager 参见第 11

2 refresh 是刷新界面,界面会重要读取数据。 update 一般很少用到。

3 Button. setImage() 无法让图像正好覆盖住按钮,但你可以用透明背景的图片,或者把 Button 设成和图片同一底色来解决这个问题。

4 API 文档: http://www.blogjava.net/chengang/archive/2006/05/24/47863.html

 

 

陈刚
       
你好, 我在书店看到了你的 Eclipse 从入门到精通这本书,并买了这本书,大概翻了几页,给了我很大的感触,我们中国的软件意识上也慢慢跟上国际潮流了 ^_^ 。我也对 Eclipse 产生了浓厚的兴趣,但是,我的一个疑惑是除了用 Eclipse 作为一个 Java 的开发环境外,对 Eclipse 工具本身,国内的公司是不是可以做点什么?

        再次谢谢你给我们带来这本精彩的书!

 

致礼 !
吴俊飞

                             E-mail: wujunf@ cpit.com.cn

谢谢你的褒奖,基于 Eclipse 插件方式的开发,特别是 RCP ,很多国内公司已经在做了。

可惜关于 RCP 方面的书市面上还没有,而我因为工作太忙的关系,也没时间去写。

希望今年能腾出时间写一本基于 RCP 实战的。

 

 

 

陈刚 老师您好:

  

    我在学习您写的那本 Eclipse 书的 22 章时候,我从光盘上导入您写的 sms 这个程序试着运行,总是出现如下的错误。我查了点资料感觉上是构建路径上出了问题,但是我查了好几天也查不出到底是哪个地方出的错。请老师帮忙看看,告诉我如何解决。

     还有就是您书上第 48 页下面的那个 注意 中的内容有些不是很明白,您说 原来项目可以继续使用,必须将 swt jface 的包和相关的引用加入到构建路径中手工做较繁琐,其有简单的方法 简单的方法我看的不是很明白。

 

 

       祝:陈老师 身体健康,工作顺利!

                                

                                                学生:张锋鑫

 

错误如下:

 

java.io.FileNotFoundException: E:\eclipse.properties ( 系统找不到指定的文件。 )
 at java.io.FileInputStream.open(Native Method)
 at java.io.FileInputStream.<init>(FileInputStream.java:106)
 at java.io.FileInputStream.<init>(FileInputStream.java:66)
 at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:69)
 at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:156)
 at java.net.URL.openStream(URL.java:913)
 at org.eclipse.core.launcher.Main.load(Main.java:1126)
 at org.eclipse.core.launcher.Main.loadProperties(Main.java:1098)
 at org.eclipse.core.launcher.Main.addBaseJars(Main.java:334)
 at org.eclipse.core.launcher.Main.getDevPath(Main.java:286)
 at org.eclipse.core.launcher.Main.getBootPath(Main.java:406)
 at org.eclipse.core.launcher.Main.basicRun(Main.java:174)
 at org.eclipse.core.launcher.Main.run(Main.java:704)
 at org.eclipse.core.launcher.Main.main(Main.java:688)

你的 Eclipse 的安装路径和本书不一样,可能是导致错误的原因。

关于构建路径,参考这篇文章 http://www.blogjava.net/chengang/archive/2006/04/24/42871.html

 

 

你好,我在添加图片时遇到了麻烦,我将一幅 gif 格式的动态的图片添加到 Label 上,可是图片却变成了静态的了,请问我要怎么样才能让图片成为动态的呢?

swt 还不支持动态 GIF

解决方案见: http://www.blogjava.net/chengang/archive/2006/04/19/41915.html

 

 

eclipse 从入门到精通》 299 页,第 22 章, 22.1.4 的安装 JDBC 连接包,其中 JAR 包加入到项目的 ' 库引用 ' ”, 这个 库引用 的图 22.12 从哪里点出来的,我找了半天都没有看到,希望能给与答复,谢谢!

着急等待中。。。

参考 P26 的图 4.25

 

 

 

您好:

      本来不想发此邮件,但此问题一直困扰我多久,自行不能解决,网上询问不得而果,在三思量,写此信。

      在书中例子 SimpleEditor1.java (P105) 中用 viewform 做底层容器,我在编写软件界面时也用了 viewform 做了底层容器,但发现在容器上置的 toolbar 中的 toolitem 项显示图片一直有问题。在创建工具栏按钮,并用 setImage 的方法加载任何图片,在 swt designer 中能看到此图片,预览中也能看到,但实际编译运行后却无法正常显示图片,图片根本看不到,甚至连按钮也看不到(图片路径绝对不会错,加载方法也不会错),不用 viewform 做底层容器时,从未遇到此类现象。疑为 viewform 的编写错误,后反复对照书中事例不曾发现任何问题,找来原书配套光盘,运行其中的事例 SimpleEditor1.java 代码,结果也是工具栏按钮无法显示图片 ( 图片 icons 文件已放入新建项目下),按钮也看不见。用的是 setImage 的方法,倘若能够编译运行,说明图片引用一定正确,应该不是图片路径或跟此有关的问题,而且在不用 viewform 做底层容器的情况下,工具栏按钮编写一切正常,从未有过图片不能显示的问题。我认为是 viewform 的问题,但一直未能发现其中原委,特向您请教,如有时间空闲,希望得以答复,感激不尽。

 

我做了实验,确实出现了你说的那种问题。

有以下几点可以确认:

1 、图片路径没问题

2 、当不用 ViewForm 时, ToolBar 和其按钮显示正常

 

所以应该是新版的 ViewForm 做了修改,或者这本身就是一个 BUG 。我发现,如果把两个按钮的 .setText 的注释掉,图片就可以显示出来真是一个很奇怪的现象,以前 3.0.1 版,图片和文字是可以同时显示的。

 

 

我是个学习 Eclipse 的新手,在注册 swt-designer 的时候老是出现 transaction failed internal server error 这个提示,我在检测我的网络连接的时候显示的是 success ,但是就是无法注册成功,希望老师给予解答。谢谢 ~~

服务器忙,你需要另找个时间去 download

 

老师你好 :

谢谢您在百忙之中阅览我的信件 !!!

我踏入软件行业不久 , 昨天看了您写的 <>, 有种相见很晚的感觉 .

开始我装的 JDK 5.0 版的 ,eclipse 是最新的 3.1.2 , 3.1.2.zip 解压缩到 D 盘后 , 直接点击 eclipse.exe, 发现的错误信息好像是 " 最低版本 1.4.1, 起码是 1.3.1 什么的 , 我自己翻译的 ", 后来我打开了旁边的 startup.jar, 能够打开 eclipse , 安装了 3.1.1 多国语言包后也能汉化 , 就是比较麻烦 .

为了日后不必要的麻烦 , 我按您的配置重新安装 :

1. 先安装 j2sdk1.4.2_06, http://java.sun.com/products/archive/j2se/1.4.2_06/index.html, 没有装他下面的 j2re;

2. 下载 eclipse3.0.1, 解压后 , 直接点击 eclipse.exe, 报错 :an error has occurred,see the log file D:eclipseconfiguration

1143922568156.log, 我打开这个文件后 , 在最后一行发现 :

!ENTRY org.eclipse.osgi 四月 02, 2006 04:16:08.406

!MESSAGE Bundle initial@reference:file:d:/eclipse/plugins/org.eclipse.core.runtime_3.0.1/ [1] was not resolved.

每次都是这样 , 即使欢乐 jdk5.0, 也是如此 .

如果您有空 , 希望能作点提示 , 谢谢 !!

要安装 j2re, 并设置 JAVA_HOME 变量

 

 

对了我还想问一下我用 ECLIPSE3.1 应该下载什么版本的 hibernate 这么多版本我都不知道那个适合?

Hibernate 的版本和 Eclipse 无关

 

先生 :
 
您好 ! 我最近在做一个校园的搜索器时在处理树型结构这个功能上引用了你的那本

<<ECLIPSE
从入门到精通 >> 上面的 TREEVIEWER 的例子的那些做法 , 问题是我想做成像资源文
件管理器那样的目录结构 , 把在校园里的一个个 IP :10.13.0.0 IP 10.13.255.255 这个
IP
段的 FTP 服务器上的资源用树型结构( TREEVIEWER )把它在一个 SCROLLCOMPOSITE 上显示
出来,但你那本教程上只是提到一次性地把数据用函数 TV.setInput(inputObj) 放入内容器
里面的,而我想实现的是搜索到一个 IP 就把它里面的资源动态地加到 TREEVIEWER TV 上面
去,而不是一次性地加上去,你那本书上在这方面上提得很少,所以我想请教你应该怎么
样用你那本书上 160-174 上的例子上的方法去实现它呢?希望先生把详细的方法和可能用
到的函数的用法告诉我,因为你那书像函数 inputChanged 方法是怎么样实现的和它的功能
的话基本上没有提到,所以看了那个例子之后还是不太会用它。谢谢!此致

 
祝:
     
工作顺利!
     
生活美满!

                                                   
余伟军
                                                    06.3.27

getInput() 是一个集合,加新增的数据加入到这个集合里即可,参数下面这个 Action

            List<View> input = (List<View>) tv.getInput();
            input.add(node);
            //add into ui
            tv.add(node);
 

 

 

public class ViewCreateAction extends Action {
    private ListViewer tv;

 

    public ViewCreateAction(ListViewer tv) {
        setText("
视图 ");
        this.tv = tv;
    }

 

    @Override
    public void setText(String text) {
        super.setText("
创建 " + text);
    }

 

    public void run() {
        ViewDialog dialog = new ViewDialog(null);
        if (dialog.open() == TitleAreaDialog.OK) {
            View node = dialog.getInput();
            ConfigureManager.getInstance ().save(node);
            //add into model
            List<View> input = (List<View>) tv.getInput();
            input.add(node);
            //add into ui
            tv.add(node);
        }
    }

 

}
 

陈刚

     你好,我是你《 Eclipse 从入门到精通》一书的一名读者。

      近日,我们老师要求我们做一个计算器的应用程序,现在我参考你的书,用 swt 做界面,可是在添加事件监听的时候遇到了问题:

     我想知道 SelectionEvent 中有没有象 ActionEvent 中的 getActionCommand() 那样类似的方法,因为,我希望通过点击数字健将这个数字键对应的数字添加到文本框中,我不知道 SelectionEvent 中的什么方法能起到相应的功能,既获得按钮上字符的方法。

     我上网找了很久都没找到,只能寄希望于能得到你的帮助。谢谢!

SelectionEvent.getSoure ()可以取得对数字键控件的引用。

 

 

尊敬的先生:

    您好!我是安徽工业大学即将毕业的应届毕业生,我所学的专业是计算机软件编码与应用。几乎要学的语言我们都学了, 我感到学的太杂,根本不是怎么的精。刚好几天前我在图书馆看到你所出的书,感到挺好的。我自己感到目前在 eclipse 插件方面发展还是很好的,并且我在南京刚找到一家软件公司准备实习,这家公司所用的平台也是 eclipse 。我想问的就是:如果想要精通其一般需要多长时间和在学习中要注意哪些?在学习中最重要的是侧重于哪方面?

    真诚的期待你的答复!

   此致

敬礼

 

 

 

                                                               06 -3-27

                                                                您忠实的读者

至少需要做一个实际项目才能谈得上精通,一般熟悉则需要 2 个月左右时间(这要看你的学习能力)。要注意多练多写。插件开发侧重于 SWT Plugin 也就是插件篇前面的内容, WEB 篇可以不用看。并且建议你看看设计模式。

 

 

您好! 我是一名桂电的学生,我遇到个问题想问您一下,就是我要用 JAVA 做一个股票系统的服务器端,需要用一个表来保存一些股票的信息,基于 J2ME 客户端我倒是知道用 RMS 来保存,难道我只能用 JDBC 来建表保存么?您觉得用什么来保存好一些,能给我些建议么? 谢谢您了,麻烦您了多多见谅!

是的, JDBC 是最基本的 JAVA 和数据库沟通的手段,当然你也可以用 Hibernate (这也是基于 JDBC 的)

 

在创建插件项目时,我所生成的 myplugin 的项目图标上有个 "X", 后来发现是我的 SampleAction.java 这个文件有问题。(因为 SampleAction.java 所对应的图标也有个 "X" )。

 

SampleAction.java 的这个程序中

public void run(IAction action) {
  MessageDialog.openInformation(
   window.getShell(),
   "Myplugin
插件
",
   "Hello
Eclipse world");
 }

这条语句段中的 window.getShell() 说是解析不了,旁边出现一行字段 " 无法解析类型 org.eclipse.swt.widgets.Shell

从必需的 .class 的文件间接引用了它 "

不知道如何解决

 

希望你能从百忙之中帮我解决下这个问题。我在这里万分感激!

我所用的是 eclipse3.1.1 swt-designer4.1.1

如果 window 这个对象如果属于 SampleAction 这类,那么这样引用:

SampleAction.window.getShell()

 

 

glchengang ,您好!
 
我非常喜欢你写的这本书,它非常适合我们这些初学者,写得很棒!希望能和你交流,得到你的指点。
 
我在看第 15 章时,按照书中的介绍实现树和列表,实现 DataFactory.java 时出错。出错行为 45 行,附件有截图。
 
语句为 city1.setChildren(list); 该方法的参数类型为 List, 而该语句的入参 list 的类型为 ArrayList.
 
根据上下语句,我想不会是印刷错误,是不是那里没描述清楚?类型 List ArrayList 差别很大。谢谢!




礼!

谢谢,你的赞赏,希望这本书能带给你一些知识。信中所提并非印刷错误。 List 的具体类型为 java.util.List (全部代码请对照光盘上的相应代码),它是 ArrayList 的接口。估计你把它看成是 swt List 了。

 

 

老师:
你好!我有个问题想咨询一下你:就是利用 SWT 如何开发界面程序。简单说就是如何在一个窗体中调用另外一个窗体?我尝试了很多次没有成功!还请老师指教一二。谢谢!
此致
敬礼

获取另外一个窗口的对象就可以了 , 关键是得到对象 , 你可以参考 P222

陈刚 先生:

        你好!

        我最近在看您的 ECLIPSE 的书,有几处想请教一下。

        1. 如何在一个 DIALOG 中的 BUTTON 添加事件监察器,按下 BUTTON DIALONG 关闭。

        2.( 也是我比较关心的 ) 能不能给一个 TEXT 加一个监听器,监听其输入的内容,以便实现诸如关键字用其他颜色标注的功能。

        望不吝赐教。

                                                                                          您的读者

                                                                                                  即日

1, 参考 P183 的图 16.15

2. 可以 . 使用 addModifyListener 试试吧

 

 

老师:

 

 

 

    你好,我最近需要在 eclipse 中设置用 java 编辑 xml 的环境。需要使用的 xml parser xerces ,我在 http://archive.apache.org/dist/xml/xerces-j/ 上下载的 Xerces-J-bin.2.8.0.zip ,得到 resolver.jar,xercesImpl.jar,xercesSamples.jar xml-apis.jar 四个 jar 文件,我想知道如何在 eclipse 中设置,将 xerces 作为 xml parser

 

 

 

我在网上找到的资料说, 1.4 之后的 jdk 中将 jaxp 作为处理 xml 的标准库, eclipse 为了避免与之冲突,从 3.0 之后就去掉了 xerces

 

 

 

我的环境是 jdk1.5.0_06 eclipse3.0.1 xerces 2.8.0

 

 

 

谢谢您的帮助

如果 Eclipse 取消了 xerces, 那是指它自已不用了 , 但并不防碍你在项目中使用 xerces

第三方库的使用请参考 P261, 设置是一样的 .

老师:

谢谢您的帮助,现在我的环境已经设置好了。我试着运行 ibm 教程中的一个实例, DomOne.java, 来读入 sonnet.xml 文件,但是我不知道如何在 eclipse 中设置 DomOne 在运行时加入 xml 文件。在 cmd 中,我试了 java DomOne sonnet.xml 命令,但是出现了

 

Exception in thread "main" java.lang.NoClassDefFoundError: DomOne

 

错误。

 

 

 

我附上这几个文件的 zip 包,希望您能帮我看一下,谢谢。

你的 java 命令错误 , 类前面应该加上包名 , 型如这样 :java com.ibm.DomOne connet.xml 建议你找一些关于 java 命令的介绍来看看

我在 eclipse 中将 DomOne 放在工程的默认包下面,并且可以运行,但是除了通过 cmd 命令之外,可不可以直接在 eclipse 下进行 xml 文件的导入呢?

当然可以。给一段我读写 XML 文件的代码给你做参照。这是用 DOM4j 来解析 XML 文件的。

先用 ProjectUtil.getInputStream(filePath); 得到一个 InputStream filePath="perportes/service.xml" 位于项目根目录下,也就是说 perportes scr 目录平级。

 

再用 Document document = XMLUtil.getDocument(is); 得到 Document 对象。

 

ProjectUtil XMLUtil 是我写的两个工具类,把其中的方法在下面一并给出。

 

注:仅供参考,如果要运行起来,你还得自已组织一下。

 

-------------------------------------------------------------

    public void init() {

        InputStream is = null;

        try {

            is = ProjectUtil.getInputStream(filePath);

        } catch (RuntimeException e) {

            // 重建功能无法实现 , 主要是 flush() 方法的文件路径无法确认

            logger.error("init fault, " + filePath + "is no found ", e);

            is = new ByteArrayInputStream(INIT_XML.getBytes());

        }

 

        try {

            Document document = XMLUtil.getDocument(is);

            if (document == null)

                throw new PersistentException("document cannot be null");

 

            rootElement = document.getRootElement();

            if (rootElement == null)

                throw new PersistentException("rootElement cannot be null");

        } catch (Exception e) {

            e.printStackTrace();

        } finally {

            try {

                is.close();

            } catch (IOException e) {

                e.printStackTrace();

            }

        }

    }

 

-------------------------------------------------------------

    public static InputStream getInputStream(String path) {

        URL url = new URL("file:" + path);

        try {

            return url.openStream();

        } catch (IOException e) {

            throw new RuntimeException(e);

        }

    }

 

-------------------------------------------------------------

    public static Document getDocument(InputStream is) {

        try {

            SAXReader reader = new SAXReader();

            //doc = reader.read (new File("jmx.xml"));// 也可这样

            return reader.read(is);

        } catch (Exception e) {

            logger.warn("", e);

        } finally {

            try {

                is.close();

            } catch (IOException e1) {

                logger.warn("", e1);

            }

        }

        return null;

    }

 

 

 

 

 

我买了你的书 <<Eclipse 从入门到精通 >>

最近我装了 Linux 系统 , 应用 SWT, 照书上的例子 , 想生成一个最简单的窗口

import org.eclipse.swt.widgets.Display;

import org.eclipse.swt.widgets.Shell;

public class HelloWorld{

  

    public static void main(String args[]){

        final Display display=Display.getDefault();

        final Shell shell=new Shell();

        shell.setSize(327,253);

        shell.setText("SWT Application");

        shell.layout();

        shell.open();

        while(!shell.isDisposed())

        {

            if(!display.readAndDispatch())

                display.sleep();

        }

    }

}

所有的   .so ,.so.1,.so.2 文件都导入了

却提示 Exception in thread "main" java.lang.UnsatisfiedLinkError: no swt-motif-3138 in java.library.path

我实在是没有办法 , 网上也没有搜索到相关的帮助 , 特意求助 ? 万分的感谢 .

参照 P49 引入原生库的一节,那是 windows 的原来库,而要用 linux motif 式样的原来库。而且你要下载 for linux(motif )版的 eclipse (见附件图)

 

陈刚

你好!

 

eclipse 从入门到精通》这本书的 423 页最上面, lomboz 环境设置那部分,为什么将“所有的 ${serverRootDirectory}/bin;${serverRootDirectory}/common/endorsed ”替换成“ ${serverRootDirectory}/common/endorsed ”?

 

我试过了,却在创建 J2EE 项目时,设置 Targeted Servers 中没有 Apache Tomcat v5.0.x 这一项,也就是根本无法添加,但是如果不按你的书上那样改的话,就有这一项,这是为什么??

 

谢谢!希望给与解答!

 

good luck!

应该有,那个下拉框下拉后有点短,也许在前面或后面没显示出来,你用拉动条找找

 

 

陈刚 ,你好!

 

  我在看你的《 eclipse 从入门到精通》感觉写的很好。我现在使用的是 eclipse3.1.2 。遇到一个问题

,就是找不到 swt.jar ,jface.jar 。请指点,谢谢!

 

        致
礼!

 

                   DBxiaozhu
                       
dbxiaozhu@163.com

                       2006-04-20

我用的是 Eclipse3.2M6

SWT

org.eclipse.swt_3.2.0.v3229j.jar

org.eclipse.swt.win32.win32.x86_3.2.0.v3229c.jar

 

JFACE 的包如下:

org.eclipse.jface_3.2.0.I20060329-0010.jar

 

 

陈刚 师兄你好:

 

我是广州华南理工数学系的学生。。

 

想请教你一下问题,麻烦抽空赐教。

 

  1. eclipse 中开发 GUI 应用程序有哪几种方式?? SWT/RCP SWTDesgin 开发的有什么区别???

 

  2. 您的那本《 eclipse 从入门到精通》里介绍的是用 swtdesin 开发应用程序,但是怎么把开发好的程序导出来,我大体看了一下那本书,好像没有提到,希望赐教

 

 

eclipse 时间不长,希望给与指点。。

 

   期待您的回复。。。

 

                                                   广州华南理工大学 03 应用数学   王兴江

1 、在 eclipse 中开发 GUI 应用程序大概有三种:( 1 )普通 SWT/JFace 桌面应用程序( 2 )插件方式( 3 RCP 方式(是新从插件中分立出来的一种。)

 

2 SWTDesgin 只是一个辅助工具,让用户可以通过拖拉操作来构建界面,不用 SWTDesgin 也可以。这类辅助工具还有 VE Visule Edit)

 

3 、第 21 章专门讲了打包和发行。

 

陈刚

       你好

 

  我是你的读者,但是现在遇到了一个问题,希望能和请教.

 

  SWT中的文本框应该只有  Text 是吧?我想利用代码在后台来控制 Text 中的文字换行

 

       我想利用 text.insert("//n");

     

       内部放入转意字符来达到目的,但是失败了,后来又试了些方法都没成功,所以想让您给些意见.

 

                             非常感谢您能阅读我的信件,期待着您的回信

 

                                                                                                    2006/04/24 23:00

                                                                                                     王 征

final Text text = new Text(shell, SWT.BORDER|SWT.WRAP);

text.setText("ssssssssss\naaaaaaaaaaa");

 

老师 :

  您好

我按照你的书中描述 , 在往 shell 加入 swt 控件时提示如下错误 :

---------------------------

Operation Failed

---------------------------

Internal Error: The requested operation could not be performed because of an internal error.

Please see the error log (<workspace>/.metadata directory) for more information and

report the problem, including the contents of the error log, to support@swt-designer.com.

 

Contact support by e-mail now?

---------------------------

(Y)   (N)  

---------------------------

请给予解答

谢谢 !

Please see the error log (<workspace>/.metadata directory)

老师 :

  您好 , 谢谢您的回信 !

不好意思 , 我是初学者 , 看后仍不知如何解决 ,swt desinger 也注册成功 , 但设计窗口是就是加不了控件 ?

谢谢 !

(<workspace>/.metadata directory) 目录下有出错的信息文件,不过做为初学者估计看这个文件也找不到解决办法。我的建议是:暂时抛弃 swt desinger ,直接用写程序。

老师 :

  您好 , 谢谢您的回信 !

我直接运行你的书中例子是完全可以的 .

谢谢 !

     高俊领

 

 

陈刚

      你好,我是华北电力大学的学生,是通过看你的书知道你的邮箱的,向你请教一个问题,望不吝指教。

      我做了一个界面,界面的上面有菜单栏,下面分为两个部分,左边是树形结构,右边想把我已有的 Dialog 嵌入进来,可是显示的却是一个脱离主界面的独立的对话框,请问应该怎么解决。

 

 

 

                                                     郑义

Dialog 不能嵌入到其他控件里,你可以考虑以下解决办法

1 )用插件里的视图

2 )把 Dialog 中的面板分解成 Dialog+Composite ,把 Composite 嵌入到其他控件。

 

 

陈刚 老师   我们毕业设计 是有关 J2EE 开发的题目 全称是**** ERP 系统可开发 , 这个题目是老师用 VB.NET 做过的 , 他带我们毕业设计 , 他让我们用 JSP+JAVABEAN+TOMCAT ECLIPSE+STRUTS 开发一个基于 MVC 的系统 , 但是他自己确不会 J2EE, 让我们自己学 , 一开始什么也不说就是说让我们自己学 , 说什么锻炼我们自己学习的能力 , 已经两个月过去了 , 我还什么都不会 , 因为这个东西我也没有学过 , 一开始都不知道看什么书 , 因为我对组件开发 , 还有多层次的软件系统的开发很陌生 , 终于自己摸索了两个多月 , 老师才给我们推荐您的这本书 , 说你们自己就按书上第四篇的 WEB 开发来做毕业设计 , 然后给了我们具体题目 , 但是已经马上快要交毕业设计了 , 还有不到一个月的时间 , 我门一个小组的什么都没有做 , 不是我冤枉老师 , 这个老师真的很不负责 , 我们去找他领题目就去了两次 , 每次都是在打扑克 , 完了就说网上发到我们的邮箱里 , 这个星期 2 才发到我们邮箱里 , 是他原来做过的系统的部分内容 , 不需要全做 , 但是我还是不会做 , 在次我真的恳求您帮帮我 , 我这学期一直在找工作 , 家里也想我马上找工作 , 但是我毕业设计还没有做 , 真的不知道该怎么办 , 偶尔间想起您的邮箱 , 报着一试的态度 , 希望您能帮帮我 , 我也不是让您替我做毕业设计 , 我就是想您有没有和这个差不多的课题的实例 , 我参照一下程序 , 或者您帮帮我的设计 , 真的是万分焦急之下才找您的 , 希望得到您的答复与肯定 . 冒昧的称为您的学生 . 在附件里我把课题的要求给您发过去 ., 我似乎连这个都有些弄不懂 , 这就是我们老师给的题目 . 我觉的对您来说很简

 

                                                      您的学生    非常感谢

 

对你的境地我深表同情,也许你们去做 ERP 的毕业课题,项目量实在太大了。我从未做过 ERP 方面的系统,加上工作任务也是很紧,所以无法给你所需要的帮助。

 

陈刚 :老师

您好!

阅读您所编著的《 Eclipse 从入门到精通》受益匪浅,学到了不少东西。能编撰这么细腻且实用的专业著作,在当今铺天盖地的专业图书海洋中,实属罕见!在此非常感谢您为广大 JAVA 爱好者奉献的这部佳作!

这部书我基本已阅读完毕,所有实例几乎全部测试成功,多亏了您给出了完整的代码实现步骤,否则,遇到太多的问题之后,一定会转向别的同类书籍,尽管我备有其他同类专业书籍,但却从未参考过它们。

在学习本书最后一章中的 26.7.2 节“由实体类自动得到 XML 映射文件: class2hbm ”时,遇到了问题,已困扰了我几天的时间,还望您予以帮助:

问题:按照本书 500 页的介绍,以自己电脑中的环境配置,调整了 setenv.bat 文件中的代码后,执行批处理命令: class2hbm cn.com.chengang.sms.model.SchoolClass --output=abc.txt ,出现以下错误提示:

Exception in thread "main" java.lang.NoClassDefFoundError: D:\jdk\lib\tools/jar;

不知问题出在那里?

 

 

我的机器配置情况如下:

操作系统: Win2000

Hibernate 版本: Hibernate 2.1.7c

Hibernate 工具包: Hibernate Extension2.1.3

JDBC 连接包: mysql-connector-java-3.0.17-ga-bin.jar

Jdk 版本: j2sdk-1_4_2_06-windows-i586-p.exe

Jdk 安装位置: d:\jdk

 

Setenv.bat 文件内容:

@echo off

set HIBERNATE_HOME=D:\Hibernate_tools\hibernate-2.1.7c\hibernate-2.1

set HIBERNATETOOLS_HOME=%~dp0..

set JDBC_DRIVER=%HIBERNATETOOLS_HOME%\bin\mysql-connector-java-3.0.17-ga-bin.jar

set CORELIB=%HIBERNATE_HOME%\lib

set LIB=%HIBERNATETOOLS_HOME%\lib

set CP=%CLASSPATH%;%JDBC_DRIVER%;%HIBERNATE_HOME%\hibernate2.jar;%CORELIB%\commons-logging-1.0.4.jar;%CORELIB%\commons-lang-1.0.1.jar;%CORELIB%\cglib-full-2.0.2.jar;%CORELIB%\dom4j-1.4.jar;%CORELIB%\odmg-3.0.jar;%CORELIB%\xml-apis.jar;%CORELIB%\xerces-2.4.0.jar;%CORELIB%\xalan-2.4.0.jar;%LIB%\jdom.jar;%CORELIB%\commons-collections-2.1.1.jar;%LIB%\..\hibernate-tools.jar

 

D:\Hibernate_tools\hibernate-extensions-2.1.3\tools\bin 路径中,建立好以上文件之后,将原工程项中 hello\Web-INF\class 目录下的 cn 的整个目录拷入了以上路径。

 

我是严格按照您给出的操作步骤进行的,但出现了以上的错误信息,真实一筹莫展,还望您在百忙之中予以及时答复为盼。

 

谢谢!

 

西安一位热心读者 05/07/06

由这一句 "Exception in thread "main" java.lang.NoClassDefFoundError: D:\jdk\lib\tools/jar;"

我看主要是找到 jdk 的自带的几个 JAR 包引起的。你把 JDK 的环境变量 classpath 设上就应该可以了。

 

 

 

 

 

 

 

 

 

 

 

 

 

 


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

评论共3页: 上一页 1 2 3 

评论

# re: 《Eclipse从入门到精通》 附录B 读者提问精选   回复  更多评论   

import java.security.acl.Group;

import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.swt.widgets.Text;

/*
* 创建日期 2006-6-9
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/

/**
* @author Administrator
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class TabFolder1 {

public static void main(String[] args) {
final Display display = Display.getDefault();
final Shell shell = new Shell();
shell.setSize(500, 375);
shell.setText("SWT Application");
final TabFolder tabFolder = new TabFolder(shell,SWT.NONE);
tabFolder.setBounds(6,6,168,118);
final TabItem tabItem_1 = new TabItem(tabFolder,SWT.NONE);
tabItem_1.setText("Item1");
{
final Group group = new Group(tabFolder,SWT.NONE);
group.setText("Radio group");
tabItem_1.setControl(group);

final Button button_1 =new Button(group,SWT.NONE);
button_1.setBounds(25,21,100,25);
button_1.setText("radio1");
final Button button_2 =new Button(group,SWT.NONE);
button_2.setBounds(24,50,100,25);
button_2.setText("radio2");
}
final TabItem tabItem_2 = new TabItem(tabFolder,SWT.NONE);
tabItem_2.setText("Item2");
{
final Composite comp = new Composite(tabFolder,SWT.NONE);
tabItem_2.setControl(comp);
final Text text_1 =new Text(comp,SWT.NONE);
text_1.setBounds(20,11,100,25);
final Text text_2 = new Text(comp,SWT.NONE);
text_2.setBounds(20,50,100,25);
}
shell.layout();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}
这个你书上的例子运行时,总是报如下的错误:
Exception in thread "main" java.lang.Error: 无法解析的编译问题:
不能实例化类型 Group,这是因为它不是一个具体类
没有为类型 Group 定义方法 setText(String)
类型 TabItem 中的方法 setControl(Control)对于自变量(Group)不适用
构造函数 Button(Group, int)未定义
构造函数 Button(Group, int)未定义

at TabFolder1.main(TabFolder1.java:37)
请问你,这是怎么回事?
2006-06-09 13:11 | 周涛

# re: 《Eclipse从入门到精通》 附录B 读者提问精选   回复  更多评论   

to:周涛:是你的Group没创建好,请参考光盘的代码。
2006-06-11 12:14 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

陈老师:
你好!我在阅读您编著的《Eclipse从入门到精通》时,碰到一个问题,就是用eclipse打开jsp文件时,为什么JSP Editor不能用的,提示出错信息,请问是什么原因?是需要另外装插件吗?
2006-06-16 01:30 | 陈进国

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

陈老师:
 你好!我在阅读您编著的《Eclipse从入门到精通》时,碰到一个问题,第317页图22.22中所指的包dbtest在cn.com.chengang.sms下面,这个包如何用eclipse如何创建,为什么我创建包时源文件夹里面只能选择SMS/src,这样创建出来的包不在cn.com.chengang.sms下面,而是在src下面了呢?
2006-06-16 12:56 | 李晓辉

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

陈老师:
您好!
我在书上第21章的第一小节中按照你写的方法对项目进行打包,在第277页上进行到最后一步,生成了run.bat文件,然后我双击这个run.bat文件,可是并没有出现图21.6所示的程序界面,而只是出现了一个快速闪过又消失的窗口,请问这是怎么回事?
盼望给予解答!
谢谢!
2006-06-16 17:32 | 刘芳

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

陈老师:
您好!
我在读到书的第72页,按照书中的例子,编写swt应用程序。可是运行的时候提示“Could not find the main class.Program will exit",请问是怎么回事?而且,书中72页提到的com.swtdesigner 包,我也没有找到,请问是怎么回事?
2006-06-17 02:24 | lijie

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

陈老师:
您好!
我在做书中插件那章的SMS管理系统时遇到问题..然后我将您书中配套光盘上的源代码拷出来后.在eclipse中直接导入(导入现有工程)然后运行后.在弹出的插件浏览窗口点击登陆..出现登陆窗口..输入SMS表里的IUSER里用户后 点击确认没有反映. 几个用户都试过还是不行.然后工作区控制台报错,显示如下:
ava.lang.ClassNotFoundException:
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at cn.com.chengang.sms.db.ConnectManager.getConnection(ConnectManager.java:32)
at cn.com.chengang.sms.db.AbstractDbOperate.getUser(AbstractDbOperate.java:38)
at cn.com.chengang.sms.navigator.LogonDialog.buttonPressed(LogonDialog.java:76)
at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3080)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2713)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
at org.eclipse.jface.window.Window.open(Window.java:787)
at cn.com.chengang.sms.navigator.NavigatorActionGroup$LogonAction.run(NavigatorActionGroup.java:48)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:996)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:538)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488)
at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:441)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3080)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2713)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1699)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)
Unhandled event loop exception
Reason:
java.lang.NullPointerException
刚看了您的常见问题解答后.把书中自带的mysql-connector-java-3.0.16-ga-bin.jar换成了mysql-connector-java-3.0.17-ga-bin.jar.问题依旧.
我已经把以前的mysql-connector-java-3.0.16-ga-bin.jar.删除掉了.在项目构建里也换成了3.0.17.在plugin.xml里换成了这样:<runtime><library name="lib\mysql-connector-java-3.0.17-ga-bin.jar"/>...项目也构建了.但是问题依旧..实在没辙了...象您求助..
迫切希望您在百忙中抽出时间解答..不胜感激..
2006-06-17 19:59 | 马啸尘

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   


,前几天在学习JFace的过程中又碰到多个问题,现一一提出来,希望能得到解决的办法。
1. 我们知道,jface.actions包里的Action与ActionContributionItem是
ContributionItem的子类,能够动态的即作为按钮、工具栏按钮、菜单选项。

比如说下图中的 “调试方式(G)”选项, 在主菜单栏里 作为“运行”的一个Action条目。





而在下图中又作为 主工具栏 下拉菜单里的一个Action条目




而在编辑器的右击弹菜单又是一个Action条目。


然后问题是:
同一个Action分别出现在主工具栏、顶层菜单栏、弹出菜单里。那么外界的MenuManager, ToolBarManager如何方便的访问到这个ActionGroup里的一个Action。我的一个方案是,用单例模式创建一个Action注册器,供全局访问。当一个Action实例被new了以后,按照键值id注册。


Public class MyAction extends Action{

Public MyAction(){

Super(id,style);
ActionRegistry.getInstance().registry(id, this);
}




单例 ActionRegistry如下:
Public class ActionRegistry{

Private ActionRegistry instance;
Private List actionList;

Public static getInstance(){

If(instance == null)
Instance = new ActionRegistry;
Return instance;
}
Public boolean registry(String actionID, IAction action);
Public IAction getAction(String actionID){
// 如果没有注册,返回null
Return lookup(actionID);
}
Private IAction lookup(String actionID);
}


因为外部管理器有时候只想添加你的Group里的一个或两个Action。

然后我又有疑问了,每个Action在全局都应该只有一个实例,因为当要求执行
“撤销”或“重做”操作时,每个Action都应该保存有它被run前的信息,如unrun方法。
如果在顶层菜单栏里的Action实例与在工具栏里Action实例不是同一个引用,显然相互的信息都不相同的,那就不知道用哪一个实例了。
所以我想问一下 如何解决这些问题。在action包里面好像有类似ActionRegistry的API,因为我看了说明文档后,总觉得其中的几个API的方法名能实现全局访问的功能,会是哪一个呢?


2. Action包的说明文档里说,Separator既可以作为可视化的分割栏,又可以作为一个Group.而在ContributionItemManager的子类(如ToolBarManager)里面都有
AppendTo(String groupID, IContributionItem)的插入类方法。

然后一个问题是这个Group有什么用处?因为按照组合模式角度,一组Item与单个Item是平行的,我总想可以成组 的fill进一个Manager的。不知道这个Separator是否就是设计来实现成组fill的。那个API说明文档太简洁了,没有实例看不懂。
想请教一下。


3. 第三个问题,如下图 工具栏中 “运行”按钮的下拉菜单
该用action包里的那个接口实现。


我曾经用
toolbarManager. add(subtoolbarManager);
toolbarManager.add(new Action1());
toolbarManager.add(new Action2());
但结果工具栏上只显示了Action1 、Action2的文字内容,subtoolbarManager里装载 的actions内容没有如预期的显示为下拉菜单,而且根本没有显示它的一个空间。
我在API里查了一下好像,Action类有个setMenuCreator()方法,不知道是否要用到它。
请问如何用action包里的几个类实现下拉菜单。


4.第四个问题。
我想实现CheckboxTreeViewer里的“全选”、“部分选中”功能,模仿CheckboxTableViewer里的setAllChecked(true), 但是找了找没有该方法。 类似的只有setCheckedElement(Object element)、 setSubTreeChecked(Object element)方法。

然后我写道
For(int i = 0;i<=checkeditem.length;i++)
setsubTreeChecked(getChecked[i]);
但是按了按钮以后没反应。查查源代码,里面就是把每个treeitem的子树设置为checked的阿,不知道为什么没反应 .
能告诉我如何实现带副选框的树的全选和子树的全选呢, 就像Eclipse里面的“生成setter和getter方法”对话框里面的那种树?

2006-06-18 09:36 | 单点

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

陈老师
你好!
我在学习<<eclipse入门到精通>>第十一章遇到了麻烦,ToolItem按钮总是不显示在工具栏上,代码是这样的
/**
* @作者:陈刚
* @Email:glchengang@yeah.net
* @Blog:http://blog.csdn.net/glchengang
*/
package swt;

import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.ViewForm;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import org.eclipse.swt.widgets.ToolBar;
import org.eclipse.swt.widgets.ToolItem;

public class SimpleEditor1 {
public static void main(String[] args) {
final Display display = Display.getDefault();
final Shell shell = new Shell();
shell.setSize(327, 253);
shell.setText("SWT Application");
//------------------新插入的界面核心代码------------------------

shell.setLayout(new FillLayout());
//用ViewForm做底层容器,并用充满型布局
ViewForm viewForm = new ViewForm(shell, SWT.NONE);
viewForm.setLayout(new FillLayout());
//在ViewForm上建立工具栏和文本框
ToolBar toolBar = new ToolBar(viewForm, SWT.NONE);
final Text text = new Text(viewForm, SWT.BORDER | SWT.V_SCROLL);
//设置工具栏和文本框在ViewForm上的位置
viewForm.setContent(text);
viewForm.setTopLeft(toolBar);
/*
* 为工具栏添加按钮及相应事件
*/
ToolItem toolItem = new ToolItem(toolBar, SWT.PUSH);
toolItem.setText("取得");
//按钮图片
toolItem.setImage(new Image(display, "icons/selectAll.gif"));
toolItem.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
String str = text.getText(); //取得文本框的文字
MessageDialog.openInformation(null, null, str);
}
});

ToolItem toolItem2 = new ToolItem(toolBar, SWT.PUSH);
toolItem2.setText("清除");
toolItem2.setImage(new Image(display, "icons/remove.gif"));
toolItem2.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
text.setText("");//清除文本框中的文字
}
});

//------------------END---------------------------------------------
shell.layout();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}
请你在百忙中抽点时间看一下,感激不尽```````
你忠实的读者
2006-06-21 10:03 | 赵静

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

我的问题已提出数日,可作者不知在忙什么?一直未作答复。

希望作者:
不要:“只承诺、不兑现;只阅读、不答复。”
我看作者从06月16 日后对于读者所提出的问题,都没有给予解答~
2006-07-02 10:15 | 李红军

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

陈老师,您好!您书中的例子是将一个固定的list放入一个tableviewer中,现在我想实现的是,每次从数据库中查询出不同的记录集,动态的放入tableviewer中,我觉得是不是应该把内容器中的inputChanged方法实现,请问怎样实现阿?谢谢!
2006-07-24 22:59 | susan

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
at org.apache.naming.NamingContext.lookup(NamingContext.java:768)
at org.apache.naming.NamingContext.lookup(NamingContext.java:138)
at org.apache.naming.NamingContext.lookup(NamingContext.java:779)
at org.apache.naming.NamingContext.lookup(NamingContext.java:138)
at org.apache.naming.NamingContext.lookup(NamingContext.java:779)
at org.apache.naming.NamingContext.lookup(NamingContext.java:151)
at org.apache.naming.SelectorContext.lookup(SelectorContext.java:136)
at javax.naming.InitialContext.lookup(Unknown Source)
at org.apache.jsp.JspModule.index_jsp._jspService(index_jsp.java:57)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Unknown Source)
2006-07-31 09:07 | leih

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

您好!我注册 swt designer 时,按照您书上所述选择 swt designer,free 两项,点下一步要输注册码,然后再点下一步就出现Transaction failed:Internal Server Error错误,请问是怎么回话?要怎么做?谢谢
2006-07-31 22:23 | 徐飞

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

zaiju u
2006-08-02 16:46 | Jackal

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

在导入SWT的原生库的过程中,我没办法找到SWT.jarde的包,就连org.eclipse.swt.win32.win32.x86_3.*.*.jar 的包也没找到,不知道为什么,我的版本是Eclipse3.1的~请教
2006-08-02 16:51 | Jackal

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

问个不是很专业的问题,这里面讲的树能用到浏览器中吗?
谢谢
2006-08-05 19:51 | ecnu

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

在按照《Eclipse从入门到精通》学习创建SWT/JFace Java Project时,创建后的项目中没有书中提到的com.swtdesigner包,请问如何解决?另外我看到org.eclipse.swt.win32.win32.x86_3.1.2下已有个swt-win32-3139.dll,那么是不是不用导入SWT原生库了?
2006-08-13 23:03 | sun

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

to sun:你所提问题,本帖中已有回答
2006-08-15 08:51 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@ecnu 不能,SWT不能用于浏览器中
2006-08-15 08:52 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@Jackal 你可能下载的不是eclipse-SDK版,SDK版的文件名一般为eclipse-SDK-3.2-win32.zip
2006-08-15 08:53 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@徐飞 帖中已有回答
2006-08-15 08:53 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@leih 你未配置正确,导致JDBC没有绑定好。检查一下自己的配置步骤
2006-08-15 08:54 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@susan 和inputchage无关,更新传给setInput的model后,执行tableview的refresh方法即可。实战篇有这个翻页需求的实现。
2006-08-15 08:56 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@赵静 帖中已有解答
2006-08-15 08:59 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@单点 已在你的EMAIL中回复
2006-08-15 09:00 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@马啸尘 ClassNotFoundException指找不到类,出错点正是在载入jdbc包中的com.mysql.jdbc.Driver类的时候,所以你还得仔佃检查一下jdbc的jar包配置步骤。
2006-08-15 09:06 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@lijie
帖中有回复
2006-08-15 09:07 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@刘芳
一闪而过的是DOS窗口,你可能是那里写错了。
2006-08-15 09:07 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@李晓辉
cn.com.chengang.sms.dbtest就是完整的包名,如果没有cn.com.chengang.sms,你完全可以在scr下直接创建cn.com.chengang.sms.dbtest。如果有cn.com.chengang.sms,你在scr下创建cn.com.chengang.sms.dbtest可以,在cn.com.chengang.sms下创建dbtest也可以。
2006-08-15 09:10 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@陈进国
lomboz没有配置好
2006-08-15 09:12 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@李红军
谢谢你的批评。不过要知道回答读者的提问并不是作者的义务,虽然这样说,但我还是已经回复有数千封的EMAIL了,这种工作量是局外人无法想象。

在网站的提问我回复得比较慢,EMAIL来信回复得比较快,当然有个别提问我无法回答。所以尽量来EMAIL,尽量描述细致,因为你描述越细致,我才能解答更精确。

另外,不要提问书之外的问题,不是我不想回答,而是精力不允许。比如有人问我MyEclipse的问题,而我熟悉的是lomboz。如果我要回答,就需要去安装MyEclipse,熟悉它,再查找原因。这要花费很多时间,是我的精力顾及不来的,必竟我还有繁重的工作要做。

最后谢谢大家的提问,和对我的信任,做得不到的地方,大家多担待了
2006-08-15 09:22 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

感谢作者的耐心解答
2006-08-15 21:06 | yhyaohu

# swt list中项目如何加上图标?  回复  更多评论   

我试了好多方法,list好像只能加字符串,没有加图片的方法,望告知如何解决?
2006-08-18 16:08 | cxg

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

陈老师:

您好,我前两天按照《Eclipse从入门到精通》中讲的方法将designer注册了,并且也出现了“ Activation is complete.Thank you. ”这条信息。完成后过两天再用swt时eclipse又弹出窗口让重新注册。请问这是怎么回事?而且第一次注册的的id号未保存。
谢谢!
2006-08-18 22:36 | yanlp

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

您好!我注册 swt designer 时,按照您书上所述选择 swt designer,free 两项,点下一步要输注册码,然后再点下一步就出现Transaction failed:Internal Server Error错误,请问是怎么回话?要怎么做?谢谢

您好,我前两天按照《Eclipse从入门到精通》中讲的方法将designer注册了,并且也出现了“ Activation is complete.Thank you. ”这条信息。完成后过两天再用swt时eclipse又弹出窗口让重新注册。请问这是怎么回事?而且第一次注册的的id号未保存。

这两个问题都是我遇到的,按照您说的方法做了,没用的。
2006-08-19 20:52 | 王东

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@王东
你不是选择free项吧,仔佃看好书中的安装步骤。
2006-08-21 09:49 | 陈刚

# re: 《Eclipse从入门到精通》常见问题解答   回复  更多评论   

@cxg
List不行,试试ListViewer
2006-08-21 09:59 | 陈刚

# 有关进度条的问题  回复  更多评论   

陈老师:
你好,我是一名初学swt的学生,我现在正在学习你的<Eclipse从入门到精通>,有些问题我解决不了,急需你的帮助。

1. 书中对进度条举的例子,都是用线程模拟的,实际应用中,比如拷贝文件时,如何使用进度条?
2.实际还是进度条的问题,但我最不明白它,所以单独提出来,就使拷贝文件夹时,如何用进度条准确的表示复制过程,希望老师能给我传个例子过来。
我的Emai:cxgliang@sina.com

我等你的回复。谢谢!
你的学生:小宇
2006-08-22 13:21 | cxg
评论共3页: 上一页 1 2 3 

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


网站导航: