jdk环境变量配置新的问题,绝对不是原来帖子的重复!
一.
系统变量里:
pATH加入C:\j2sdl1.4.1_04\bin
classpath加入C:\j2sdk1.4.1_04\lib\tools.jar; C:\j2sdk1.4.1_04\lib\dt.jar
二.
系统变量里:
新增变量JAVA_HOME ,值为: C:\j2sdk1.4.1_04
CLASSPATH, 值为: .;%JAVA_HOME%\lib
Path 的最前面加上:%JAVA_HOME%\bin;
三.
只再系统变量里:
pATH加入C:\j2sdl1.4.1_04\bin
为什么以上三种方法都能实现对HELLOWORLD!的输出
如:
c:\javac HELLOWORLD.java
c:\java HELLOWORLD
c:\HELLOWORLD!
这是为什么,请高手指教!难道CLASSPATH变量没有用吗?这三种方法有何异同,请明示。
问题点数:20、回复次数:7Top
1 楼jgsfy(阿庙)回复于 2005-01-01 16:44:26 得分 0
先看第一种和第三种,差别只是第一种多了个classpath加入C:\j2sdk1.4.1_04\lib\tools.jar; C:\j2sdk1.4.1_04\lib\dt.jar,而你的HELLOWORLD.JAVA肯定没有用到tools.jar和dt.jar两个包中的类,所以这两种方法是一样的.
而第二种里的PATH实际上也就是C:\j2sdk1.4.1_04\bin,所以和第三种其实是一样的,只是写法上用了;%JAVA_HOME%
Top
2 楼cly33(JIM)回复于 2005-01-01 17:37:05 得分 5
上楼说的不错Top
3 楼hanxu(逆风飞扬)回复于 2005-01-01 21:40:51 得分 0
to jgsfy(阿庙)
第二种和第三种的classpath路径一个设到了\LIB 令一个设到了lib\tooLs.jar 和dt.jar 两者有何区别?另外.JAR 文件是什么意思,装的是什么东西
谢谢解答Top
4 楼oldmoon(电子商务人,电子商务路)回复于 2005-01-02 10:34:17 得分 5
.JAR 文件是java程序里所用到的包!Top
5 楼jgsfy(阿庙)回复于 2005-01-02 15:12:04 得分 0
classpath路径一个设到了\LIB 表示\LIB下的所有包啊, .JAR就是JAVA中的包文件
令一个设到了lib\tooLs.jar 和dt.jar 直接指向了你可能会用到的两个包名Top
6 楼hanxu(逆风飞扬)回复于 2005-01-02 16:13:45 得分 0
to jgsfy(阿庙) 谢谢你的回答:
我还有一个相关的问题如下,想请教你,谢谢
在配置了环境变量
path: I:\j2sdk1.4.2_03\bin;
classpath: .;I:\j2sdk1.4.2_03\lib\tools.jar;I:\j2sdk1.4.2_03\lib\dt.jar;
之后,在javatest 文件夹下写了一个HelloWorld的小程序,在dos提示符下:
I:\ >javac I:\javatest\HelloWorld.java
I:\ >java I:\javatest\HelloWorld
出错如下:
Exception in thread "main" java.lang.NoClassDefFoundError:
而如果在
I:\javatest> javac HelloWorld.java
I:\javatest> java HelloWorld
HelloWorld !
能够输出正确的结果,不知为何?请执教
想让出错的程序能够正常运行应该如何作?我也知道第二种方法好用,我就是想知道为什么,谢谢!
Top
7 楼jgsfy(阿庙)回复于 2005-01-04 10:33:20 得分 10
I:\ >javac I:\javatest\HelloWorld.java
I:\ >java I:\javatest\HelloWorld
这种情况下系统不会到你的绝对路径下去找.java文件,而你在
I:\javatest> javac HelloWorld.java
I:\javatest> java HelloWorld
HelloWorld !
里面,因为当前目录已经在javatest包里面了,所以虚拟机会正确读出这个包里的helloworld.class文件
这和你的path: I:\j2sdk1.4.2_03\bin是有关的,因为你这就是设定JAVA虚拟机的路径,以后你无论在任何目录下运行java test.java文件,系统都会到path: I:\j2sdk1.4.2_03\bin下去找这个java.exe文件的.Top




