Java程序命令行启动需用java命令,先编译源码为.class文件,再通过全限定类名运行,配合-cp指定类路径、处理依赖JAR、传入JVM及程序参数。

在 Java 中通过命令行启动程序,核心是使用 java 命令(不是 javac),并确保类路径(classpath)和主类名正确。
确认已编译好 .class 文件
Java 源文件(如 Hello.java)需先用 javac 编译为字节码:
-
javac Hello.java→ 生成Hello.class - 若类在包中(如
com.example.Hello),源文件应放在对应目录结构下:com/example/Hello.java,编译时需在com的上一级目录执行:javac com/example/Hello.java
使用 java 命令运行主类
运行时不需要写 .class 后缀,只需指定**全限定类名**(含包名):
- 无包的类:
java Hello - 有包的类(如
package com.example;):java com.example.Hello(必须在包结构的根目录下执行) - 如果
.class不在当前目录,用-cp或-classpath指定路径:java -cp ./bin com.example.Hello
处理依赖和外部 JAR 包
若程序依赖第三方库(如 gson.jar),需把它们加入类路径:
立即学习“Java免费学习笔记(深入)”;
- Windows:
java -cp ".;lib/gson.jar" com.example.Main - macOS / Linux:
java -cp ".:lib/gson.jar" com.example.Main - 多个 JAR 可用分号(Windows)或冒号(Unix-like)分隔;
.表示当前目录,别忘了加
传入 JVM 参数和程序参数
JVM 参数(如内存设置)放在 java 命令后、主类名前;程序参数放在主类名后:
-
java -Xmx512m -cp . MyApp arg1 arg2→-Xmx512m是 JVM 参数,arg1 arg2会传给main(String[] args) - 常见 JVM 参数还有
-Dkey=value(设系统属性)、-verbose:class(调试类加载)等
java 命令可用(JDK/JRE 的 bin 目录已加入 PATH),且版本兼容编译时的字节码版本。


















