【IT168 技术文档】
很多人不能够很好的进行Java编程,原因就在于对Java运行环境的不了解或是了解得不够透彻。如果连一个普通的Java程序运行环境都搭建不好。就更不要说理解J2EE的运行环境搭建了。故本文首先介绍如何搭建普通Java程序的运行环境,再介绍如何在这个基础上进一步搭建J2EE运行环境。
一、什么是JDK
学Java的人都应该知道SUN公司的Java 技术平台按其应用环境的不同有三个非常著名的版本,他们是J2SE(用于普通桌面应用程序的开发),J2EE(用于企业级应用程序的开发)和J2ME(用于移动设备及其他消费类电子产品的应用程序开发),SUN公司为这三个版本分别提供了相应的开发工具包(SDK:SoftWare Development Kits),下载的网址在http://www.sun.com/downloads,不过可能因为全世界太多人登录的原故,网页经常出现打不开的现象,其实大家在国内一些常用的资料下载网站同样可以DOWN到这些工具包的。在此不一一列举了。
值得一提的是我们通常所说的JDK工具包指的是J2SE的SDK。目前一般学习者用得最多的也就是这个工具包了。大家还要注意一点,SUN公司为不同的操作系统提供了不同的JDK文件,而且这些文件又有脱机版(OFFLINE)与在线安装版(ONLINE)之分,所以在下载的时候要注意选择正确的文件。
工具包里到底有些什么呢?其实这里面包括了Java程序的开发工具(JavaC命令等)、运行环境(Java命令等)和核心类包。可想而知要想运行Java程序。就必须安装好JDK工具包。
二、如何安装JDK
当我们从网络上DOWN下J2SE 5.0 JDK以后,双击他就开始安装了。需要注意的就是选择安装路径的问题,通常我们将它安装在C盘根目录下(这也是安装程序默认的路径),其他的工作就是一个接一个地按NEXT啦。
三、搭建运行和开发环境
是不是当我们装完JDK以后就可以编写代码,准备编译运行了呢?别忙。大家还是跟着我一起检查一下吧:
1、 点击操作系统桌面上左下角的‘开始’菜单,选择‘运行’,然后在打开对话框里输入CMD,看到了吧,我们进入了命令提示符窗口,我们爱叫他DOS界面。
2、现在大家在窗口里应该看到提示符了吧,通常会是这样:C:\Documents and Settings\Administrator>
3、下面让我们在提示符后面敲上这样一个命令:Java,出现了这样的提示了吗?
Usage: Java [-options] class [args...]
(to execute a class)
or Java [-options] -jar jarfile [args...]
(to execute a jar file)
……
这是Java命令的帮助信息,如果有,那么成功一半了。
4、接下来,继续试一下:在命令提示符处敲:JavaC。同样也出现了JavaC的命令帮助提示了吗?我想应该没有吧。你看到的也许会是这样: ‘Javac’不是内部或外部命令,也不是可运行的程序或批处理文件。
为什么出现这样的情况呢?
这是因为我们的操作系统在执行一个命令时,首先会到当前目录下去查找这个命令文件。如果在当前目录下找不到,他就会按照系统变量PATH所指示的多条路径里去搜索,直到找到为止。如果在这两个地方都找不到他就会报上面大家看到的错误。
在C:\Documents and Settings\Administrator这个路径下我们当然找不到JavaC命令啦。我们的JDK不是安装在C盘根目录下吗?而我们的JavaC、Java命令则在JDK目录下的BIN文件夹里,这个夹子里还有许多其他宝贝命令。
怎样才能让操作系统找到JavaC命令呢?很简单!我们需要修改一下系统变量PATH,这样就不用每次要运行这个命令时都得跑到C:\j2sdk1.4.2_02\bin这个路径下面去了。怎样修改PATH,我们在第四个专题里来介绍。
5、当我们在PATH变量里加了一条路径:C:\j2sdk1.4.2_02\bin以后,再到命令提 示符状态下输入JavaC,就会出现帮助提示了。这就说明我们可以开始写Java程序了。
6、让我们写一个Hello.Java测试一下吧,我在E:\LESSON1这个文件夹下创建 v1 了一个文本文件,输入如下一段代码,并且将之保存为Hello.Java。
public class Hello
{
public static void main(String args[])
{
System.out.println("Hello World!");
}
}
7、好现在我们又回到命令提示符状态下。在提示符处输入:JavaC Hello.Java,命令又出错了。为什么?因为文件是建在E:\LESSON1下面,而我们的当前目录却不是它。
在提示符处敲入:‘E:’,然后再敲:‘cd lesson1’,进入Java文件所在的那个目录后,现在再敲JavaC Hello.Java,文件成功编译。
注意成功编译后会在当前目录下生出一个名叫:Hello.class的字节码文件。但是屏幕上没有任何提示。
8、再试着运行一下‘Java Hello‘这个命令,可以运行吗?当然不行。为什么,因为我们的字节码文件是在Java虚拟机里运行的,所有关于虚拟机要使用的字节码文件的路径必须在一个叫做CLASSPATH的操作系统变量里找得到。否则我们的虚拟机就无法找到这个字节码文件,从而也就无从执行了。
9、怎么办?先运行如下命令:set classpath=%classpath%;E:\lesson1,然后再运行 Java Hello 这个命令。屏幕上终于出现了亲切的问候:Hello world! 不过奇怪的事情又发生了。
当我们重新启动一个命令提示符窗口再运行这个Java文件时,又无法执行了,屏幕提示:Exception in thread "main" Java.lang.NoClassDefFoundError: Hello。还是老问题,虚拟机又找不到字节码文件了。
为什么呢?其实我们在DOS窗口中设置的系统变量只对当前窗口有效。要想让我们的变量设置对任何一个DOS窗口都有效,还得到桌面上去做。我们仍然将在第四个专题里讲述CLASSPATH这个Java环境变量的设置。