cmd无法编译java源文件

![图片说明](https://img-ask.csdn.net/upload/201706/24/1498269319_226044.png)图片说明

源文件是英文状态下的输入

图片说明

例如 :你的源文件为test.java,在d:/abc下

那么dos下就是d:/abc>

输入javac test.java

成功后,应该会在d:/abc下生成一个test.class

然后再在d:/abc>

输入java test

就会看到你程序里的结果了

前提是你要设置好3个环境变量path ,classpath,JAVA_HOME

eclipse不需要环境变量都可以(好像) 因为我只前配了jdk1.7的环境,后来我又安装了jdk1.8然而我不想再配环境变量, 然后我装了个新版的eclipse
新版eclipse直接就找到了jdk1.8 而原来那个版本的eclipse还是找到的1.7 从此我电脑上就两个eclipse都可以正常运行,因为没有配置1.8jdk所以在cmd
下 查看版本信息还是1.7

如果 用cmd命令运行java文件 可以先切换成HelloWorld.java所在目录 如切换到D:\Avery\A下的HelloWorld.java文件 A是个文件夹
cd /d D:\Avery\A
之所以要/d 参数是有的电脑的dos配置不要/d直接写全路径无法切换
然后输入 javac HelloWorld.java
java HelloWorld
就可以了

你需要看一下你的文件后缀名改没改 有一些是隐藏了的 你直接改了之后它的后缀名其实是HelloWorld.java.txt

打开系统的后缀名显示看看拓展名对不对

还有在你的cd到你的java 源文件所在的文件夹

再进行编译

文件编码不对,可以二选一:
1、javac -encoding utf-8 HelloWorld.java
2、不改命令,文件另存为ANSI格式,以记事本为例(当然最好别用记事本)
图片说明