【求助!】javac 无法编译
刚刚装了jdk 1.7.0安装目录为: C:\Program Files\Java\jdk1.7.0_01\
无法使用javac编译
------------------------------------------------------------------
D:\testC\JAVA>javac AutoInc.java
'javac' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
------------------------------------------------------------------
在xp下设置的环境变量为
------------------------------------------------------------------
D:\testC\JAVA>echo %java_home%
C:\Program Files\Java\jdk1.7.0_01
D:\testC\JAVA>echo %classpath%
.;%JAVA_HOME%\lib;C:\Program Files\QuickTime\QTSystem\QTJava.zip
D:\testC\JAVA>echo %path%
%JAVA_HOME%\bin\;%JAVA_HOME%\jre\bin\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\
System32\Wbem;C:\Program Files\Common Files\Thunder Network\KanKan\Codecs;C:\Pro
gram Files\QuickTime\QTSystem\
------------------------------------------------------------------
该目录下文件为:
------------------------------------------------------------------
D:\testC\JAVA>dir
驱动器 D 中的卷没有标签。
卷的序列号是 A88B-D025
D:\testC\JAVA 的目录
2011-12-05 20:02 379 AutoInc.java
------------------------------------------------------------------
可以正确使用java -version
------------------------------------------------------------------
D:\testC\JAVA>java -version
java version "1.7.0_01"
Java(TM) SE Runtime Environment (build 1.7.0_01-b08)
Java HotSpot(TM) Client VM (build 21.1-b02, mixed mode, sharing)
------------------------------------------------------------------
而javac.exe也应该没问题
------------------------------------------------------------------
D:\testC\JAVA>"C:\Program Files\Java\jdk1.7.0_01\bin\javac" AutoInc.java
D:\testC\JAVA>dir
D:\testC\JAVA 的目录
2011-12-05 20:28 855 AutoInc.class
2011-12-05 20:02 379 AutoInc.java
------------------------------------------------------------------
编译后的文件可以直接用java运行
------------------------------------------------------------------
D:\testC\JAVA>java AutoInc
i : 1
++i : 2
i++ : 2
i : 3
。。。
------------------------------------------------------------------
是我哪里设置不对导致不能用javac吗?
求达人解答, 谢谢!
--------------------编程问答-------------------- echo %java_home%
......
%JAVA_HOME%\bin\
修改下大小写.... --------------------编程问答-------------------- 看看JAVA_HOME设置为JDK的安装目录没 --------------------编程问答-------------------- 现在安装好像都不用配置了吧 都是自动的吧 --------------------编程问答-------------------- 别整啥java home了
直接把bin的全路径配置到path中 --------------------编程问答--------------------
试过了,不行。。。。
--------------------编程问答--------------------
使用绝对路径的话没问题了。
不过还是很困惑,因为现在的配置说明一般都说用java_home
难道java_home已经了out? --------------------编程问答-------------------- 在这里最终让cmd认知javac的是path中的javac所在路径,JAVA_HOME只是个中间变量
echo下这个吧(%JAVA_HOME%要读出来正确)
%JAVA_HOME%\bin
path中也这样设:
%JAVA_HOME%\bin; --------------------编程问答-------------------- JAVA_HOME ="...",java_home 改成大写的JAVA_HOME 看行不行 --------------------编程问答-------------------- JAVA_HOME我从来不用的,不使它过时了。而是方便大家重用JDK的路径,当你再次使用的时候可以直接使用JAVA_HOME而不用重新使用JDK的绝对路径。 --------------------编程问答-------------------- xp中应该是对大小写不敏感的
----------------------------------
C:\Documents and Settings\Administrator>echo %java_home%
C:\Program Files\Java\jdk1.7.0_01
C:\Documents and Settings\Administrator>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.7.0_01
---------------------------------
而我也确实设置了java_home(无论大写还是小写都试过)
不过path中使用%java_home%就无法认识javac,而java是能够认识的,并且版本也是1.7的。
所以猜测java是通过%java_home%被找到了。
至于javac为啥找不到,有点迷茫了。
--------------------编程问答-------------------- 别用java_home我从来不用这个。你直接把c:\Java\jdk1.7.0\bin 放到path里面。把你前面配置过的全部删除。。重开ms—dos 敲入javac 是不是很神奇可以用了 --------------------编程问答-------------------- c:\Java\jdk1.7.0\bin 追加到path里面 --------------------编程问答-------------------- %JAVA_HOME%\bin\;%JAVA_HOME%\jre\bin\;
怀疑配置这个的时候有问题 --------------------编程问答-------------------- JDK1.5之后的不用整那么麻烦的,你只要建一个 PATH : C:\Program Files\Java\jdk1.7.0_01\bin 就行了。。 --------------------编程问答-------------------- 遇到javac不是内部或者外部命令的时候,大多是path变量设置错误,
path是定义操作系统查找并且运行可执行文件的路径,所以就是告诉操作系统你的javac.exe在哪里,把javac.exe所在的bin路径加到path里面去就可以了
set path=C:\Program Files\Java\jdk1.7.0_01\bin;%path%
%%表示引用之前的path变量的值,路径之间用分号隔开
希望可以帮助你解除你的疑惑 --------------------编程问答-------------------- ;.什么的不要乱加就好了。仔细检查以下就好了
补充:Java , Java SE