Java轻量开发只需JDK+文本编辑器+终端,配置JAVA_HOME和PATH后用javac/java命令即可编译运行;类名必须与文件名严格一致;单文件项目无需构建工具,依赖用-cp指定;Windows中文乱码需统一UTF-8编码。

用 javac 和 java 命令就能跑起来,不需要 IDE
Java 轻量级开发环境的核心就是 JDK + 文本编辑器 + 终端。只要 JAVA_HOME 配对、PATH 包含 bin 目录,就能直接编译运行代码。IDE(如 IntelliJ 或 Eclipse)是可选的“加速器”,不是必需品。
常见错误现象:javac: command not found 或 java.lang.NoClassDefFoundError,基本都是路径没配对或类名/文件名不一致导致的。
- 下载 OpenJDK(推荐 Eclipse Temurin 17 LTS 版),安装后记下根目录(如
/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home或C:\Program Files\Eclipse Adoptium\jdk-17.0.1+12-hotspot) - 设置
JAVA_HOME环境变量为该根目录,再把$JAVA_HOME/bin(Linux/macOS)或%JAVA_HOME%\bin(Windows)加进PATH - 终端执行
javac -version和java -version,输出一致且非空,说明配置成功
public class 名必须和 .java 文件名完全一致
这是新手最常卡住的地方——不是语法问题,是 JVM 加载机制决定的硬约束。哪怕大小写差一个字母,javac 会编译成功,但 java 运行时一定报错:Could not find or load main class Xxx。
示例:想运行一个主类,必须严格匹配:
立即学习“Java免费学习笔记(深入)”;
public class Hello {
public static void main(String[] args) {
System.out.println("ok");
}
}
这个类必须保存为 Hello.java,不能是 hello.java 或 HelloWorld.java。
- 编译:
javac Hello.java→ 生成Hello.class - 运行:
java Hello(不带.class后缀) - 如果类在包里(比如
package demo;),文件得放在demo/Hello.java路径下,编译需用javac demo/Hello.java,运行要用java demo.Hello
依赖少就手写 MANIFEST.MF,别急着上 Maven
项目只有一个 .java 文件,或只依赖标准库(java.*、javax.*),完全不需要构建工具。只有当你需要第三方 JAR(比如 gson.jar)时,才用 -cp 参数临时指定:
- 把
gson-2.10.1.jar和你的Main.java放同一目录 - 编译:
javac -cp gson-2.10.1.jar Main.java - 运行:
java -cp ".:gson-2.10.1.jar" Main(macOS/Linux)或java -cp ".;gson-2.10.1.jar" Main(Windows) - 想打包成可执行 JAR?写个最小
META-INF/MANIFEST.MF:Manifest-Version: 1.0 Main-Class: Main Class-Path: gson-2.10.1.jar
然后用jar cfm app.jar MANIFEST.MF *.class
Windows 上中文乱码?优先调 chcp 65001 和 -Dfile.encoding=UTF-8
cmd 默认编码是 GBK,而 Java 源文件通常存为 UTF-8,不显式指定就会编译报错:“非法字符”或“未结束的字符串字面量”。这不是环境没配好,是编码链断了。
- 临时修复:在运行前先执行
chcp 65001(切换 cmd 为 UTF-8) - 编译时加参数:
javac -encoding UTF-8 Main.java - 运行时加参数:
java -Dfile.encoding=UTF-8 Main - 一劳永逸:把
-Dfile.encoding=UTF-8加进系统环境变量_JAVA_OPTIONS(注意是下划线开头)
Mac/Linux 一般默认 UTF-8,但如果你用 VS Code 编辑 Java 文件,也要确认右下角显示的是 UTF-8,不是 GBK 或 ISO-8859-1。










