您是否想得到 1.5 版本的 Java 2 Standard Edition 的软件开发包(SDK),而又不知道从何处可以获取?Sun 已经通过 JavaLobby 的一个 特殊 网页发布了该版本。但是,如果不想成为 JavaLobby 的成员,您仍然可以获得 very early access版本。实际上它只是一个 alpha 版本,并且已经过时了,但是现在还是是可以使用,因此如果不怕承担风险,那么就可以使用它。
下载 alpha 版本
在 Core Java J2SE 1.5 主页(参阅 参考资料)Sun 并没有提供这个受限版本的任何信息。也不能访问 Early Access Downloads 主页(参阅 参考资料)。尽管信息如此缺乏,如果您知道到什么地方可以找到,就可获得一个 Tiger 的一份拷贝。最简单的就是在 JavaLobby 上注册获得成员资格(参阅 参考资料),如果您已经知道下载地址,甚至可以不用在 JavaLobby 申请成员资格。
访问 JavaLobby 的 alpha 版本下载链接,然后单击 Download 链接。如果您不是 Sun Developer Network 的成员,那么需要进行注册。否则,只需登录和点击 Continue 按钮。下载文件的大小通常是 30 MB 到 45 MB,但 Solaris 9 SPARC 平台需要下载的文件大小不到 9 MB,。所以要根据自己的操作系统选择合适的下载链接。下载完成后,把文件存在本地,就可以进行安装了。
在 Windows 中安装 Tiger
Sun 没有提供关于这个版本的安装文档,因此在安装过程中只能靠自己。在安装过程中 遇到 问题要反馈时,没有关于安装的技术支持 —— 也没有关于其他方面的支持。对于 Win32/Intel 平台,首先运行刚才下载的可执行文件j2sdk-1_5_0-beta-bin-b31-windows-i586-11_dec_2003.exe
。在进入许可协议窗口(图 3)之前将会看到两幅介绍性屏幕(图 1 和图 2)。请仔细的阅读许可协议,然后选中 I accept the terms in the license agreement单选按钮,按 Next。
图 1. 欢迎屏幕
图 2. 向导启动屏幕
图 3. 许可协议屏幕
如果您的屏幕抓图与上述不一致的话,可能是因为我使用的是 Windows 平台,至于 Linux(或 Solaris)平台下安装问题的一些细节方面的不同,留给读者作为练习。
在图 4 中将会提供 Custom Setup 的设置。默认情况下,该软件将会安装到c:/j2sdk1.5.0
。您可能想把这个路径改为c:/j2sdk1.5.0-alpha
,这样当真正的 1.5 版本发布时,安装时就不会产生混淆。如果您选择安装所有组件,那么需要大约 300 MB 的自由空间。注意这里没有任何文档选项。这是因为这个 early access 版本不提供帮助文档。修改完安装路径后,按 Next。
图 4. Custom Setup 屏幕
接着进入 Browser Registration 屏幕(图 5)。在这里,可以选择浏览器用于运行您希望的 Java 插件的版本。由于这是预览版代码,因此您可能会全部取消选中,只要在浏览器之外有可用的运行时即可。根据您想要在浏览器中测试的内容,或者如果您有一台专用的测试机器,我们假定您一个都不选(也就是说,取消选中所有浏览器),然后点击 Install。
图 5. Browser Registration 屏幕
下面是 Progress 屏幕(图 6),该屏幕执行拷贝文件过程、注册产品和完成安装。在这最后一步,需要等待一段时间。如果选择了安装 Java 运行时环境(Java Runtime Environment,JRE),在看到 Installation Complete 屏幕(图 8)之前,将会看到另外一个屏幕(图 7 )。
图 6. Progress 屏幕
图 7. JRE 进度屏幕
选择 Finish结束安装。
图 8. 安装完成屏幕
使用 Tiger
现在已经有了完全的 1.5 版本 —— 至少是 Sun 提供的 early access 版本。要使用这个版本,需要把安装目录添加到路径中,并更改所有相关的环境变量,如清单 1 所示:
清单 1. 设置 Windows 环境变量
set JAVA_HOME=c:/j2sdk1.5.0-alpha set PATH=%JAVA_HOME%/bin;%PATH%
第一行设置环境变量JAVA_HOME,该变量的值就是 tiger 的安装路径。第二行表示在这个安装路径下添加一个bin目录到您的路径中。
在设置完环境变量后,可以运行java -version确认所做的设置是否正确,就像清单 2 中一样:
清单 2. 测试 1.5 环境
java -version java version "1.5.0-beta" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta-b31) Java HotSpot(TM) Client VM (build 1.5.0-beta-b31, mixed mode)
为了测试新的版本,我们将使用 上月专栏 中的测试代码。找到该代码,并在不加载任何其他特殊库的情况下对其进行编译。编译该代码需要使用-source 1.5命令行参数。您将会发现从 early access 版到 alpha 版的一些变化,虽然谁也无法知道 beta 版本将会带来的改变。例如,在枚举测试的例子中取得VALUES常量 现在使用的是values()方法,它返回一个数组而不是List。同样,switch 选择标签变为不再限制使用常量参数。清单 3 展示了上个月例子中的一个经过修改的EnumTest类(获取 源文件):
清单 3. 枚举测试
public class EnumTest { public static void main(String args[]) { enum Color {red, green, blue}; // Get collection of values (as List) System.out.println(java.util.Arrays.asList(Color.values())); // Check if collection type is array of Color objects System.out.println(Color.values() instanceof Color[]); // Create variable of type for each value for (Color aColor : Color.values()) { // Use iteration in switch switch(aColor) { case red: System.out.println("Got red."); break; case green: System.out.println("Got green."); break; case blue: System.out.println("Got blue."); break; } } }}
清单 4 显示了编译清单 3 的步骤并运行(编译参数-source 1.5只在编译时需要):
清单 4. 编译和运行例子
javac -source 1.5 EnumTest.java java EnumTest [red, green, blue] true Got red. Got green. Got blue.
在清单 4 中的第 4 行显示的输出true描述了调用values()的返回值类型是Color[ ]。
参考资料:
http://www.ibm.com/developerworks/cn/java/j-tiger01204/index.html#resources
本文配套源码
只想到处流浪人生就像一场旅行,不必在乎目的地,