3.4.1 配置一个新的JDK
JBuilder 2005的默认JDK版本是1.4.2,如果希望在其他的JDK版本中构建应用程序,必须下载安装这些版本的JDK,并将其配置到JBuilder中。配置JDK和配置JBuilder类库相似,其实质是生成一个包含JDK类库、Javadoc文档及JDK根目录的地址,以便JBuilder按图索骥找到需要的类及文档。
通过Tools->Configure->JDKs...弹出Configure JDKs对话框,左窗格中列出了JBuilder中已经配置的JDK,如图3-35所示。
图3-35 JBuilder已配置的JDK
和图3-26的Configure Libraries对话框一样,Configure JDKs对话框的左窗格也包括4个文件夹,其中D:/test是手工自添加的。将JDK配置文件保存到不同的文件夹下,可以达到权限控制的目的,默认将放在User Home文件夹下。
虽然JBuilder 2005支持JDK 5.0,但在JBuilder 2005开发期间,JDK 5.0的正式版本还没有发布,所以JBuilder 2005仅提供了JDK 5.0中有限新功能的支持。为了使用JDK 5.0所有的新功能,需要下载安装JDK 5.0。下面我们就将JDK 5.0配置到JBuilder 2005中,并在工程中使用JDK 5.0。
1.安装JDK 5.0
可以通过Sun公司的网站下载最新发布的版本:http://java.sun.com/j2se/1.5.0/ download.jsp。将其安装在C:/ Program Files/Java/jdk1.5.0目录下(默认的路径)。
2.在JBuilder 2005中配置JDK5.0
调出如图3-35所示的Configure JDKs对话框,单击左窗格下的New...按钮,弹出如图3-36所示的对话框。
图3-36 添加新JDK的向导
单击Existing JDK home path输入框后的…按钮,弹出选择目录的对话框,如图3-37所示。
图3-37 选择JDK 5.0所在的目录
选择JDK 5.0的根目录,单击OK按钮返回到上一个New JDKs Wizard对话框。稍等片刻,JBuilder将自动读出JDK的名字填在Name for this JDK中,在本例中该JDK的名字是java version 1.5.0-b64,单击New JDKs Wizard对话框的OK按钮完成JDK 5.0的配置。此时图3-35所示的Configure JDKs对话框的User Home文件夹下将出现一个java version 1.5.0-b64的设置信息。查看C:/Documents and Settings/<机器登录用户>/jbuilder 2005下,将发现多了一个java version 1.5.0-b64.library配置文件,该配置文件描述了JDK 5.0类库、Javadoc文件及源程序所在路径。
3.4.2 在工程中使用JDK 5.0
在JBuilder 2005中完成JDK 5.0的配置后,如何在工程中指定使用这个JDK呢?请打开本书光盘chapter3/usejdk5.0目录下的usejdk5.0.jpx工程。在默认的情况下工程的JDK版本是1.4.2。通过Project->Project Properties...调出Project Properties对话框,选择Paths页,按图3-38所示的操作流程设置该工程的JDK为JDK 5.0。
图3-38 设置工程的JDK
打开工程的usejdk5_0. Test.java,该类文件中下面的这段代码利用了JDK 5.0中新增的自动装/拆箱特性,如代码清单3-2所示。
代码清单3-2 使用JDK 5.0中自动装/拆箱特性的代码
1.public static void main(String[] args)
2.{
3. ArrayList<Integer> list = new ArrayList<Integer>();
4. list.add(0, 42);
5. int total = list.get(0);
6. System.out.println("total:"+total);
7.}
当Make或Rebuild usejdk5_0. Test.java程序时编译并不会通过,而是报出一串语法错误的出错信息。既然已经将工程的JDK设置成JDK 5.0,且程序中的代码是JDK 5.0所支持的语法,为什么还会引发这个错误呢?原来是编译器设置没有相应调整而造成的。通过Project->Project Properties...->Build->Java,打开Java设置页,查看编译器的语言特征Language features,发现其选项是Java 2 SDK ,v 1.3 and earler ( assets disabled)。
因为JDK的版本是向前兼容的,所以虽然当前工程的JDK版本是JDK 5.0,但是却可以用这个JDK开发前期JDK版本特征的应用程序,也即当前工程JDK版本是JDK 5.0,但它只提供JDK 1.3及更早期版本的功能,而将JDK 1.3之后所新增的功能屏蔽了。为了使用JDK 5.0提供的最新功能需要选择Java 2 SDK,v 5.0(generics enabled)选项,如图3-39所示。
图3-39 设置JDK的语言特征
当完成JDK语言特征的设置后,再编译运行usejdk5_0. Test.java程序,程序将正确运行。