在cmd中可以运行java,但是不能用javac

链接:http://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\jre
4.安装完成后,进行环境变量的配置,计算机右击属性,-高级系统设置-环境变量-选择下边的系统变量

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就不是一个目录了。

再试一试就ok了

时间: 2024-12-11 04:29:56

在cmd中可以运行java,但是不能用javac的相关文章

cmd中可以运行java,但不能运行javac命令

在cmd中可以运行java,但运行javac命令时提示:'javac' 不是内部或外部命令,也不是可运行的程序或批处理文件. 原因:安装java时把jdk的路径和jre的路径选择成一样,就造成覆盖了.这时候你在lib下也找不到tools.jar和dt.jar. 解决: 1)卸载java,直接用windows自带的卸载这两个有关java的程序: 2)重新安装java,安装时有两次选择路径的机会,第一次是让你选择jdk安装路径,选择为C:\Program Files\Java\jdk1.8.0_14

express模块安装后cmd中不能运行

在各种关于NodeJS的教材中,必定会有关于express的介绍.express本身是一个很赞的库. 在之前的express版本中,在全局模式安装(npm -g install express)之后,在cmd命令行中,都可以使用express命令进行各种操作(创建简单的网站模板等). 但是,现在安装后,发现cmd中不再支持express命令. 解决:再安装一个express-generator模块即可. npm -g install express-generator 以下是express官方关

在cmd窗口下运行Java程序时无法找到主类的解决办法

我是Java的初学者,昨天在cmd窗口下运行一段Java程序时总是有问题,可以编译但无法执行. 也就是javac时正确,一旦java时就不对了,提示找不到或无法加载主类,经百度谷歌再加上自己的摸索终于解决了问题. 现在汇总一下这类问题的可能解决办法. 1.检查环境变量路径配置错误. JAVA_HOME是jdk的路径,CLASSPATH是lib路径(记得前面要加.;这俩个),Path是bin的路径. 2.更改一下CLASSPATH的路径. 比如我原来的是.;C:\Program Files\Jav

Sublime Text 3中配置运行Java

1.安装JDK并配置环境变量 2.在JDK的bin目录下新建runJava.bat文件,右键选编辑,复制粘贴如下代码并保存: @echo off cd %~dp1 echo Compiling %~nx1...... if exist %~n1.class ( del %~n1.class ) javac -encoding UTF-8 %~nx1 if exist %~n1.class ( echo ------Output------ java %~n1 ) 3.打开Sublime Text

CMD下编译运行Java程序

准备1:JDK下好了 准备2:环境变量配置好了 准备3:本次测试用的是JDK8,用JDK10的在Eclipse里面好像用不了 满足上面三个条件,那可以继续看下去了 Test_1:带包编译运行 代码: package HelloWorld; public class HelloWorld{ public static void main(String [] args){ System.out.println("hello world!!!"); } } 文件位置: 编译指令:javac

sublime text 设置编译运行java

Sublime Text 是一个代码编辑器(Sublime Text 2是收费软件,但可以无限期试用),也是HTML和散文先进的文本编辑器.Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim. Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等.还可自定义键绑定,菜单和工具栏.Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , G

cmd中编译和运行java程序

[cmd下编译] 方法一: 1.首先在工程文件夹下面新建一个sourcelist.txt,把所有要编译的java类的绝对路径写进去,每写一个换一行 javac -classpath lib/jxl.jar -sourcepath src @sourcelist.txt -d bin javac -sourcepath src @sourcelist.txt -d class2(没有三方包的情况,我在项目根目录下新建了一个class2文件夹存放编译成功后的.class文件) -d选项就是desti

【转】如何配置EditPlus中Java运行环境,运行Java程序

如何配置EditPlus中Java运行环境,运行Java程序 http://jingyan.baidu.com/article/86112f13725e2e2736978711.html 分步阅读 EdltPlus是一款不错的Java代码编辑器,使用EditPlus对于语言代码格式自动生成,省去了我们很多不必要的时间,且其具有小巧,省内存的优势,对于我们平时编写一些简单的Java程序很有帮助,下面小编就为大家介绍下如何配置EditPlusJava环境编辑,使其可以直接运行Java程序(怎么样在e

(转)在Docker中运行Java:为了防止失败,你需要知道这些

转自:https://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=2649693848&idx=1&sn=4e9ef7e2a9d41b39985899b6ad146298&chksm=889321fbbfe4a8ed58d09e6bcf2f9c2603859c331489c0a8a56b8050e601438415b1398fc1f6&mpshare=1&scene=1&srcid=0419cxIPfJ