Java运行环境设置

      初学Java的时候,Java运行环境的设置困扰了我很久,当时让人很是气馁;近来重新拾起Java,又显生疏。写此文,主要是想简单介绍一下Java开发工具(JDK)的下载和运行环境设置,希望对初学者有所帮助。
本文的运行环境:Windows XP Professional SP2 + J2SDK1.4.2_10。
一、 JDK的下载:您可以到Java的官方网站(http://java.sun.com)下载J2SDK,如下图1,

JDK的下载

您可以下载J2SE 1.4.2 SDK或者J2SE 5.0,本文以1.4.2为例。单击进去之后,您可以看到如下图2

2

其中最上面的NetBeans是SUN提供的Java开发环境;最下面的J2SE JRE是Java的运行环境,如果你只需要运行现成的Java程序,而不需要编译Java源代码,则下载JRE即可;我们需要下载的是中间所标明的SDK,点击该连接,可看到链接的新页面如下图3:

3

首先我们选中Accept License Agreement,然后根据自己的操作系统平台选择合适版本。您也可以选择是全部下载后离线安装,或者是在线安装。我下载的是Windows平台下的离线安装版本,这是多国语言版本。
下载后,安装比较简单,直接双击,程序即可自动解压缩并进行安装,一路都有画面指示,您只需要遵循即可。我的安装路径是C:/rogram Files/Java/j2sdk1.4.2_10,你也可以自行选择其它路径。
安装完成后,在安装路径下的bin文件夹(C:/rogram Files/Java/j2sdk1.4.2_10/bin)内,有各种开发工具,初学我们只要了解两个:
Javac.exe Java编译器,可将*.java文件编译成*.class文件(字节码文件)
Java.exe Java程序的执行工具,可以启动Java虚拟机执行*.class文件
二、设置Java运行环境:其实这个也比较简单。我们进入”控制面板”-----双击”系统”,弹出”系统属性”对话框,我们选择”高级”-----单击”环境变量”按钮,如下图4:

4

即可设置环境变量。我们需要设置的是”系统变量”,如下图5所示:

5

这里我们需要设置3个变量(注意变量的大小写):
JAVA_HOME Java SDK的路径
Path Java SDK开发工具的路径
CLASSPATH Java程序所需的*.class路径(类路径)

下面分别介绍:
1、JAVA_HOME,通常没有这一个变量,我们可以单击”新建”按钮,打开如下图6的对话框:

6

在”变量名”处填入JAVA_HOME,”变量值”处填入SDK的安装路径,我机器上是”C:/rogram Files/Java/j2sdk1.4.2_10”;

2、Path,通常这个变量已经有了(如果没有,请用”新建”),我们需要单击”编辑”按钮,打开如下图7的对话框:

7

在”变量值”处我们需要增加一个值,是Java开发工具的所在路径,即bin文件夹所在路径。这里你可以填写绝对路径,比如我机器上是” C:/rogram Files/Java/j2sdk1.4.2_10/bin”;或者也可以填入相对路径,由于我们已经有了JAVA_HOME这个变量,所以相对路径是”%JAVA_HOME%bin”,如上图7中蓝色部分。在这里,您要注意的一点是,”变量值”区域可能还有一些其他的路径,每个路径之间是用”分号”隔开。

3、CLASSPATH,通常这个变量已经有了(如果没有,请用”新建”),我们需要单击”编辑”按钮,打开如下图8的对话框

8

在”变量值”处我们需要增加一些值,是您编译程序时,所需要的一些外部的*.class文件所在路径(也可以是包含*.class文件的压缩包路径,这些压缩包通常是*.jar格式,对于*.jar文件,我们可以用winrar打开看一下,里面到底有些什么)。在这里,我们填入相对路径,填入的信息为” .;%JAVA_HOME%libtools.jar;%JAVA_HOME%libdt.jar;”,这里实际上有3个路径,它们之间以”分号”隔开;第1个路径为.(点),表明是当前文件夹,第2个路径为” %JAVA_HOME%libtools.jar”,第3个路径为” %JAVA_HOME%libdt.jar”。以上3个路径是*.class文件的查找路径,当编译你的程序时,Java会在上述路径内查找所需要的文件。当然,如果我要在”变量值”内填入绝对路径,在我机器上我会填入” .;C:/rogram Files/Java/j2sdk1.4.2_10/lib/tools.jar;C:/rogram Files/Java/j2sdk1.4.2_10/lib/dt.jar”。
好了,说了半天,头都晕了,别急,待会我们还会再详解。


三、既然运行环境设置好了,我们来测试一下,测试的方式是SDK+记事本,^_^
1、编辑源代码:
我们打开记事本,在里面填入那个最经典的代码,就输出个”Hello,World!”好了:
public class MyFirstProgram{
public static void main(String[] args){
System.out.println("Hello,World!");
}
}
我们写了一个类,类名是MyFirstProgram,类中有一个静态的main方法,如果你学过C/C++,没错,这个main就是程序的入口。我们将这段代码保存到E盘根目录,注意:”保存类型”应该选”所有文件”,而文件名应该为MyFirstProgram.java(*.java后缀表明这是一个Java源代码文件,同时Java规定,每个源文件中最多只能有1个public类,而文件名就是该public类的类名;而如果源文件中没有任何public类,那么你可以用文件中的任何一个类名来命名该文件),如下图9所示:

9

2、编译源代码:首先我们打开命令提示符,键入”java”,如果您的运行环境”Path”变量设置正确,您应该可以看到如下的语法提示信息(这下我们了解了,上面设置的Path变量就是为了使我们在命令行方式下可以执行一些java命令):

10

Path没问题,下面我们可以编译刚才所写的MyFirstProgram.java了。
还记得编译工具是什么吗?没错,就是javac.exe,我们进入E盘根目录,键入如下命令”javac MyFirstProgram.java”(这里注意,请带上.java后缀,同时也要注意大小写),如下图:

11

假设源代码正确,除了在同目录下您会看到一个以.class结尾的同名文件外,不会有什么提示信息;如果出现了异常的信息,说明您的程序有错,您要回去修改源代码了(您可以故意给源代码一些错误,看看编译的时候报什么错)。

3、运行:刚才所产生的MyFirstProgram.class文件(字节码文件),不能直接执行,应该启动Java虚拟机来执行。还记得如果启动Java虚拟机?就是java.exe。我们在E盘根目录下键入”java MyFirstProgram”(这里同样要注意大小写,还有,一定记得不要加.class后缀,呵呵,您可以试一下,加上后缀是什么效果)后,我们就可以得到这个程序的运行结果了,如下图:

12

四、CLASSPATH:初学的时候,那也是一个让人沮丧的内容,至少对于我是这样,程序莫名其妙出现找不到类的运行错误,你就要考虑类路径的设置有没有问题了。
1、首先是一个简单的例子,我们在E盘根目录下创建这样两个文件:PathSample.java和TestSample.java,其中源代码分别如下:
//PathSample.java
public class PathSample{
public PathSample(){
System.out.println("This is a Path Sample");
}
}

//TestSample.java
public class TestSample{
public static void main(String[] args){
new PathSample();
System.out.println("Test Sample");
}
}
注意,在PathSample类的成员中只有一个构造函数,打印出一行信息;而在TestSample函数里,有程序运行的入口main方法,其中首先创建了一个PathSample的对象,其次打印出一行提示信息。
然后我们分别编译PathSample.java和TestSample.java,这样在E盘根目录下就会出现两个对应的*.class文件。
最后我们执行”java TestSample”,就可以看到程序的运行结果,如下图所示:

13

这里,您也许会产生一个疑问:在TestSample.java中,我们创建了一个PathSample类的对象,因此,虚拟机需要访问PathSample.class来找到PathSample类的定义,但在TestSample.java的源代码中我们并没有指示它该去哪里找啊?
其实,我们早就指明了,还记得在”系统变量”里设置的”CLASSPATH”吗,其中第一个值是一个.(点),用来表明当前路径;这不是很明确得告诉虚拟机,”请首先在当前路径下找我所需要的类”嘛。
另外,Java认为每一个文件夹就是一个default package(默认包/缺省包),因此同一个文件夹下的类之间有package访问权限。您可以把PathSample.java中所有的public全部去掉,重新编译运行,看看结果是否还和原来一样。

2、接下来我们来看另一个例子:
(1) 首先在E盘根目录下创建一个文件AnotherPathSample.java,源代码如下:
//AnotherPathSample.java
public class AnotherPathSample{
public AnotherPathSample(){
System.out.println("This is an Other Path Sample");
}
}
然后我们编译这段代码,生成*.class文件,如下图所示:

14

(2) 然后我们创建第二个文件AnotherTestSample.java来测试一下,注意,这次的源代码我们放在D盘根目录下,源代码如下:
//AnotherTestSample.java
public class AnotherTestSample{
public static void main(String[] args){
new AnotherPathSample();
System.out.println("Another Testing Sample");
}
}
在main方法中,我们同样创建了一个对象,并打印出一行信息。下面我们进入D盘根目录,编译该文件,错误立马出现,如下图所示:

15

1个错误!!!说AnotherPathSample类无法找到。
问题出在哪里?您也许猜到了,没错,就是”CLASSPATH”的问题。
想一下是为什么?之前我们设置的环境变量中,有一个路径,就是.(点)路径,表明在当前路径下找所需要的类。现在AnotherTestSample.java在D盘,而在同目录下并没有AnotherPathSample.java(它在E盘),难怪找不到了。
怎么解决,很简单,把你所需要的类所在的路径,加入到系统环境变量即可。我们打开”控制面板”-----双击“系统”图标-----“高级”标签页-----“环境变量”按钮-----在“系统变量”组-----选中”CLASSPATH”变量-----单击”编辑”按钮,在最后增加一个路径,即AnotherPathSample.java所在路径(现在是”E:”,注意和前面一个路径用分号隔开)。如下图所示:
16

(3) 现在,我们回到命令行下(您可能需要把原来的命令行窗口关闭、重开),进入D盘根目录,然后编译AnotherTestSample.java,一切正常,运行,结果也没问题,如下图所示:

17

现在您对CLASSPATH的设置是不是有些清楚了呢,就是把您所需要的类的路径――放到系统的”环境变量”中去

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值