必须安装JDK而非JRE,并正确配置JAVA_HOME环境变量;用记事本写代码、命令行编译运行;注意类名与文件名一致、javac/java版本匹配、源文件编码为UTF-8。

装 JDK 而不是 JRE,且必须配好 JAVA_HOME
新手常误以为装个“Java 运行环境”就够了,结果运行 javac 报错“命令未找到”。JRE 只能运行字节码,javac 编译器在 JDK 里。务必下载完整 JDK(如 jdk-21 或 jdk-17 LTS 版),安装后立即验证:
java -version javac -version
两者都输出版本号才算成功。若 javac 失败,说明系统没识别到 JDK 的 bin 目录——必须手动设置 JAVA_HOME 环境变量,指向 JDK 根目录(例如 C:\Program Files\Java\jdk-21 或 /Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home),再把 %JAVA_HOME%\bin(Windows)或 $JAVA_HOME/bin(macOS/Linux)加进 PATH。
用记事本 + 命令行起步,别急着装 IDE
IntelliJ 或 Eclipse 自动补全、自动导入、红叉提示太强,新手反而分不清哪些是语法错误、哪些是 IDE 配置问题。建议前两周只用系统自带编辑器(记事本、TextEdit、gedit)写 HelloWorld.java,然后在终端里逐条执行:
javac HelloWorld.java java HelloWorld
这个过程强制你理解:源文件名必须和 public class 名一致;java 命令后面不加 .class 后缀;类路径(-cp)出错时会报 NoClassDefFoundError。等你能稳定编译运行含 import java.util.Scanner 的程序了,再切 IDE。
立即学习“Java免费学习笔记(深入)”;
系统易学易懂,用户只需会上网、不需学习编程及任何语言,只要使用该系统平台,只要会打字,即可在线直接完成建站所有工作。本程序适合不懂php环境配置的新手用来在本机调试智能SiteSEO网站优化软件,安装过程极其简单。您的网站地址:http://localhost您的网站后台:登录地址: http://localhost/admin.php密 码: admin服务器套件所包含的软件:nginx-0.7
javac 编译失败的三个高频原因
新手卡在编译阶段最常见,错误信息往往藏关键线索:
-
error: class HelloWorld is public, should be declared in a file named HelloWorld.java→ 类名和文件名大小写/拼写不一致(Java 区分大小写) -
error: cannot find symbol→ 拼错方法名(如System.out.prinln())、漏写分号、或作用域错误(在main外直接调用非静态方法) - 空错误、无输出、或提示
Unsupported class file major version XX→java和javac版本不匹配(比如用 JDK 21 编译,却用 JRE 8 运行),统一用java -version && javac -version核对
别碰 Maven/Gradle,先搞懂 java -cp 加依赖
网上教程一上来就教 mvn archetype:generate,但新手根本不知道 pom.xml 里每行在干什么。如果要用第三方库(比如 JSON 解析),直接下载 gson-2.10.1.jar,然后这样运行:
javac -cp ".;gson-2.10.1.jar" MyApp.java java -cp ".;gson-2.10.1.jar" MyApp
注意 Windows 用分号 ;,macOS/Linux 用冒号 : 分隔路径。这比配置 build.gradle 更直观:你立刻看到“类路径”就是一堆 .jar 和当前目录的组合。等你手敲十次 -cp 后,再学构建工具才真正明白它在帮你省什么。
最容易被忽略的是编码问题:中文 Win10 默认用 GBK,而 Java 源文件默认按 UTF-8 读取,导致 非法字符: '\u65e0'。解决方法只有两个:用编辑器(如 VS Code)显式保存为 UTF-8,或加参数 javac -encoding UTF-8 HelloWorld.java。









