用CMD运行javac 出现这个 得怎么解决?

解决方案 »

  1.   

    path的环境变量配置问题? 感觉自己没错啊?
      

  2.   

    作者:文墨闲谈
    链接:https://www.zhihu.com/question/28428426/answer/114375451
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。原因:这是因为安装java时把jdk的路径和jre的路径选择成一样,就造成覆盖了。这时候你在lib下也找不都tools.jar和dt.jar.解决:1.首先卸载java,卸载很容易,直接把这两个有关java的程序给卸载了就行了(用windows自带的卸载)。卸载完你也会发现,原来放java的文件夹也空了。2.重新安装在D盘新建一个java文件夹,在java文件下新建两个文件夹,分别命名为jdk和jre.3.双击程序进行安装,安装时有两次选择路径的机会,第一次是让你选择jdk安装路径,选择为D:\java\jdk,第二次是让你选择jre的安装路径,选择为D:\java\jre4.安装完成后,进行环境变量的配置,计算机右击属性,-高级系统设置-环境变量-选择下边的系统变量5.新建变量名:Path变量值:C:\ProgramData\Oracle\Java\javapath;%java_home%\bin;%java_home%\jre\bin新建变量名:JAVA_HOME变量值:D:\java\jdk新建变量名:ClassPath变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;之所以把java_home设为D:\java\jdk,是因为安装过程中生成的dt.jar,tools.jar是放在了D:\java\jdk\lib目录下,它都是jdk的东西。classPath用java_home来做一个相对路径。所以java_home必须是jdk的安装目录,且后面不可以有分号,若它后面有分号,则%JAVA_HOME%\lib\dt.jar就不是一个目录了。6.测试打开cmd,输入java,输入javac输入java -version就代表安装成功
      

  3.   

    Microsoft Windows [版本 10.0.14393]
    (c) 2016 Microsoft Corporation。保留所有权利。C:\Users\asus>javac
    用法: javac <options> <source files>
    其中, 可能的选项包括:
      -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                    出现警告时终止编译
      @<文件名>                     从文件读取选项和文件名
    C:\Users\asus>java -version
    java version "1.8.0_152"
    Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
    Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)C:\Users\asus>
      

  4.   

    javac是编译命令,后面要有源文件名的
      

  5.   

    javac 要指定文件名进行编译