如何用命令行运行Java程序?

在Windows中打开命令提示符(cmd),确保已安装Java JDK,使用 cd 命令切换到Java文件所在目录,输入 javac 文件名.java 编译,然后输入 java 类名 运行程序。

环境检查:确认Java安装

在运行Java前,必须安装JDK(Java Development Kit)并配置环境变量:

如何用命令行运行Java程序?

  1. 检查JDK安装
    打开命令窗口(Windows按 Win+R 输入 cmd;macOS/Linux打开 Terminal),输入:

    java -version

    若显示类似 java version "17.0.1" 的版本信息,说明已安装。

  2. 未安装JDK?

    • 官网下载:Oracle JDKOpenJDK
    • 安装时勾选 “Add Java to PATH”(Windows)或通过包管理器安装(Linux/macOS)。

打开命令窗口的详细方法

不同操作系统的操作流程:

Windows 系统

方法 操作步骤
快捷启动 Win + R → 输入 cmd → 按回车
搜索栏启动 点击任务栏搜索图标 → 输入“命令提示符”或“cmd” → 打开应用
文件路径启动 在Java文件所在文件夹 → 按住 Shift + 右键 → 选择“在此处打开命令窗口”

macOS 系统

  1. 打开 Finder → 进入 应用程序 → 打开 实用工具 → 启动 终端
  2. 快捷键:按 Command + Space → 输入 Terminal → 回车

Linux 系统

  • 桌面环境:按 Ctrl + Alt + T(Ubuntu等主流发行版通用)
  • 菜单查找:在应用菜单搜索“Terminal”或“终端”

编译与运行Java程序

以文件 HelloWorld.java 为例:

如何用命令行运行Java程序?

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, Command Line!");
    }
}
  1. 进入Java文件目录
    在命令窗口中输入(替换路径为实际位置):

    cd C:UsersYourNameProjects  # Windows示例
    cd /Users/YourName/Projects    # macOS/Linux示例
  2. 编译Java代码

    javac HelloWorld.java  # 生成 HelloWorld.class 字节码文件
  3. 运行程序

    java HelloWorld  # 注意:不要加 .class 后缀

    成功输出Hello, Command Line!


常见问题解决方案

问题现象 原因分析 解决方法
'javac' 不是内部或外部命令 JDK环境变量未配置 重新安装JDK并勾选添加PATH,或手动配置环境变量
错误: 找不到或无法加载主类 类名错误或.class文件缺失 检查类名拼写 → 重新执行 javac 编译
乱码问题 系统编码与Java编码不一致 编译时指定编码:javac -encoding UTF-8 HelloWorld.java

高效操作技巧

  1. 快速定位文件夹

    如何用命令行运行Java程序?

    • Windows:在文件资源管理器地址栏输入 cmd 直接打开当前路径的命令窗口。
    • macOS/Linux:在终端输入 open .(macOS)或 nautilus .(Linux)打开当前目录。
  2. 使用集成开发环境(IDE)
    如IntelliJ IDEA、Eclipse支持内置终端,可直接在IDE中编译运行(适合复杂项目)。


通过命令窗口运行Java程序是开发者的基础技能,关键在于:

  1. 正确安装JDK并配置环境变量
  2. 掌握 cd 命令切换目录
  3. 区分 javac(编译)和 java(运行)命令

实践建议:从简单程序开始,逐步熟悉命令行操作,遇到问题时,检查路径、拼写和环境变量配置,多数错误可快速解决。

引用说明

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/14145.html

(0)
酷盾叔酷盾叔
上一篇 2025年6月7日 15:12
下一篇 2025年6月7日 15:22

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN