posts - 11, comments - 10, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Java环境变量问题排错小结

Posted on 2006-05-25 10:56 繁星满空 阅读(2030) 评论(4)  编辑  收藏 所属分类: Java
  刚学java那会,老师教我们编译、运行java代码,老师说:“同学们,编译java代码,我们要用javac这个命令,而要用javac这个命令,我们要设置环境变量。”当时主流的操作系统是windows98,修改环境变量必须要修改AUTOEXEC.BAT这个文件,而一旦修改错了将导致系统无法正常启动,实在是吓煞我们这些小菜鸟。等后来的Win2k及WinXP普及后,修改环境变量方便多了,直接右键点击我的电脑,在高级选项里就可以编辑环境变量。

在windows平台下,PATH变量可以让系统找到相应的可执行程序,在命令行下敲入一个命令,如果在当前目录没有相应的可执行程序,系统会从PATH里指定的目录中从前到后的寻找那些目录下是否有相应的可执行程序,所以为了在任何目录下都可以编译、运行java代码,我们将目录%JAVA_HOME%\bin加入到PATH里面。注意以下操作:
1.       新建环境变量JAVA_HOME,并指定为JDK的安装目录
一些Java应用需要指定这个变量,否则程序无法启动。
2.       把%JAVA_HOME%\bin加入到PATH里面,以“;”分隔
使系统可以找到javac、java等可执行程序。
3.  新建环境变量CLASSPATH,加入“.; %JAVA_HOME%\lib\dt.jar; %JAVA_HOME%\lib\tool.jar”,“.”表示为当前目录
CLASSPATH是jvm搜索的类路径,使其能找到相应的类文件或JAR文件。
4.       在命令行下运行java –version,可以查看当前jdk的版本
5.       在命令行下查看set PATH,可以查看环境变量PATH的值
6.       在命令行下查看set CLASSPATH,可以查看环境变量CLASSPATH的值
 
 场景一:哎呀,我的Eclipse启动不了,什么都没动呀,就是刚装了oracle客户端,开始排查,在命令行下运行java –version,发现当前jvm的版本是1.3.1,原来是oracle安装程序修改了环境变量PATH,把其自带的低版本的jdk放在最前面,而Eclipse必须在jdk1.4以上运行,把oracle安装程序私自添加的内容去掉后,Eclipse就可以正常启动了。 

 场景二:平时编写一些简单的测试代码时,我都是采用JDK+Editplus的方式,今天写一些测试代码后,编译没问题,运行时报错,找不到类文件,郁闷,平时都是可以的呀,开始排查,jdk版本没问题,编译可以生成类文件,Editplus的设置也没问题,抛开Editplus,我直接在命令行下运行,还是报找不到类文件,查看set CLASSPATH,发现是一个莫名其妙的路径,并且没有“.”(表示当前路径),重新修改成上面提到的方式,利用Editplus可以正常运行,啊,输了一口气。再回头看那个莫名其妙的路径,竟指向刚装的QuickTime的某个路径,Apple还真是让人不省心呀。

评论

# re: Java环境变量问题排错小结  回复  更多评论   

2006-05-25 18:39 by pc
http://www.kpwang.com/pc/view.jsp?board_id=1&article_id=200648233941Java Socket编程中的一个秘密类 http://www.kpwang.com/pc/view.jsp?board_id=1&article_id=200648233758Java解析网络数据流的三种特殊方法 http://www.kpwang.com/pc/view.jsp?board_id=1&article_id=20064823373java开发的邮件发送程序

# re: Java环境变量问题排错小结  回复  更多评论   

2006-07-22 13:22 by tomcat
谢谢,我就是装了oracle9i以后eclipse起不来了,原来是这样啊!

# re: Java环境变量问题排错小结  回复  更多评论   

2009-04-01 13:56 by 路子
但是我确定我的jdk配置都正确了,eclipse却无法正确使用呢,太奇怪了,system这个包有的,它下面的out包却没有~~

# re: Java环境变量问题排错小结  回复  更多评论   

2009-05-17 16:49 by 小刺猬
(1)先安装j2sdk-1.4.2_13
(2)添加变量classpath,设置变量值为:
.;C:\j2sdk1.4.2_13\lib\dt.jar;C:\ j2sdk1.4.2_13\lib\tools.jar;c:\workbench\lib\javax.servlet.jar;
(3)修改已有的变量path,在最后添加C:\ j2sdk1.4.2_13\bin;
(4)将WorkBench解压缩到C盘目录
但是输入运行时:JAVAC 不是内部或外部指令!相当的郁闷!

只有注册用户登录后才能发表评论。


网站导航: