如果java命令可以用,那么javac命令应该也可以用。
出现你这种情况的原因有二:
(1)已经正确安装JDK,但没有重新打开控制台,导致javac命令不能用。
解决方法:关闭原有控制台,重新打开控制台,输入javac测试。
(2)已经正确安装JDK,但没有设置path环境变量,导致javac命令不可用。
解决方法:设置环境变量,将类似“C:\Program Files\Java\jdk1.6.0_17\bin”的值添加到path环境变量中。重新打开控制台,输入javac测试。
至于“java -version”显示安装成功,这并不能说明什么。java是跨平台的语言,在Windows、Linux等多种操作系统平台上都预装有java的运行环境JRE,在它的bin目录下就有java命令(用于运行Java程序),但没有javac命令(用于编译Java程序)。也就是说,即使你不安装JDK,一样可以使用java命令,但不能直接使用javac,除非安装jdk,并设置path环境变量。
假设有路径:D:\WHX\Allcode\java\HelloWorld.java
进入某一盘符, 不需要cd,直接D: 回车
就会进入D盘
然后cd WHX\Allcode\java
就可以进入java文件夹下,显示D:\WHX\Allcode\java
输入cd ..\返回上一级目录,显示D:\WHX\Allcode、
编译运行主要是使用javac 和java命令。
编译 :javac HelloWorld.java
编译成功后自动生成.class文件
运行:java HelloWorld
运行结果!


可能很多初学者和我一样,在初次接触java开发的过程中,急于看到最终的结果,匆匆在网上下载了jdk之后,点击安装,结果等安装完,开始配置classpath时,发现jdk/lib下面根本就没有 tools.jar 和dt.jar 这两个包。作者在首次遇到这样的问题时,以为是下载的包有问题,于是重新下载了之后再安装,结果还是老样子。我相信你现在很可能遇到了类似的问题。好吧,那你就接着往下看,耐心一点。
问题的根本原因,可能是你和我一样,没有弄清两个概念:JDK和JRE。JDK是java开发核心组件,是用来编译解释java程序的核心组件,包含java compile(javac) 面向的是java开发人员。JRE是java运行环境,用来支持java程序的运行,主要包含的是JVM。Java一种是跨平台语言,一次编译,多次在多台电脑上运行,这种机制主要依靠JVM实现。java程序编译得到的是中间字节码,中间字节码是不能再机器上直接运行的,必须要经过JVM把中间字节码转换为机器语言。JRE是面向的是java程序的用户。

退到包名之前的目录 然后执行
显示dd
执行成功

-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
-proc:{none,only} 控制是否执行注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
-processorpath <路径> 指定查找注释处理程序的位置
-parameters 生成元数据以用于方法参数的反射
-d <目录> 指定放置生成的类文件的位置
-s <目录> 指定放置生成的源文件的位置
-h <目录> 指定放置生成的本机标头文件的位置
-implicit:{none,class} 指定是否为隐式引用文件生成类文件
-encoding <编码> 指定源文件使用的字符编码
-source <发行版> 提供与指定发行版的源兼容性
-target <发行版> 生成特定 VM 版本的类文件
-profile <配置文件> 请确保使用的 API 在指定的配置文件中可用
-version 版本信息
-help 输出标准选项的提要
-A关键字[=值] 传递给注释处理程序的选项
-X 输出非标准选项的提要
-J<标记> 直接将 <标记> 传递给运行时系统
-Werror 出现警告时终止编译
@<文件名> 从文件读取选项和文件名
网友评论