0

0

在Java里如何使用命令行编译并运行Java程序_Java命令行工具配置

P粉602998670

P粉602998670

发布时间:2026-02-09 15:16:45

|

271人浏览过

|

来源于php中文网

原创

javac编译失败主因是路径和编码不匹配,需确认工作目录并用-javac -encoding UTF-8指定编码;运行失败多因类路径或包声明不一致;JDK需配置PATH;多文件或依赖需正确使用-cp。

在java里如何使用命令行编译并运行java程序_java命令行工具配置

javac 编译失败:找不到文件或提示“编码GBK不可映射”

常见现象是执行 javac HelloWorld.java 后报错:error: file not found: HelloWorld.java,或出现乱码、中文注释报错。本质是路径和编码不匹配。

  • 确认当前终端工作目录就是 HelloWorld.java 所在目录(用 cd 进入,别只靠眼睛看)
  • Windows 默认控制台用 GBK 编码,而 Java 源文件多为 UTF-8;编译时必须显式指定:javac -encoding UTF-8 HelloWorld.java
  • 如果文件名含中文,确保终端也支持该编码(PowerShell 或 Git Bash 更稳妥,CMD 常翻车)

java 运行时报错“找不到或无法加载主类”

编译成功(生成了 HelloWorld.class)但运行 java HelloWorld 失败,多数情况是类路径(-cp)或包声明没对齐。

  • 没有 package 声明:直接在源文件所在目录运行 java HelloWorld(注意:不要加 .class 后缀)
  • package com.example; 声明:必须在 com/example/ 的父目录下运行,且命令为 java com.example.HelloWorld
  • 若类在子目录中,需用 -cp 显式指定根路径,例如:java -cp . com.example.HelloWorld

如何让 javac / java 命令全局可用

核心是把 JDK 的 bin 目录加进系统 PATH 环境变量,否则只能在 JDK 安装路径下用命令。

ChatMind
ChatMind

ChatMind是一款AI生成思维导图的效率工具,可以通过AI对话生成和编辑思维导图。

下载
  • 先确认 JDK 已安装,运行 java -versionjavac -version 应返回版本号;若报“不是内部或外部命令”,说明 PATH 未配置
  • Windows:找到 JDK 的 bin 路径(如 C:\Program Files\Java\jdk-17.0.1\bin),添加到系统环境变量 PATH
  • macOS/Linux:在 ~/.zshrc~/.bash_profile 中追加 export PATH="/path/to/jdk/bin:$PATH",然后执行 source ~/.zshrc
  • 验证:新开终端,直接输入 javac -help 能打印帮助即成功

编译多个文件或带依赖的简单项目

不用构建工具时,纯命令行也能处理小规模依赖,关键是按依赖顺序编译,并用 -cp 连接类路径。

立即学习Java免费学习笔记(深入)”;

  • 两个类互相引用(A.java 用到了 B.class):一起编译更安全 —— javac A.java B.java
  • 引用了外部 JAR(如 gson-2.10.1.jar):编译时用 -cp 包含它:javac -cp ".;gson-2.10.1.jar" Main.java(Windows 用分号,macOS/Linux 用冒号)
  • 运行时同样要带上 JAR:java -cp ".;gson-2.10.1.jar" Main
  • 注意:CLASSPATH 环境变量容易干扰,建议始终用 -cp 显式控制,避免隐式行为
命令行跑 Java 看似简单,真正卡住的地方往往不是语法,而是路径层级、编码、类路径这三块的隐式规则——它们不会报明确错误,只会让你反复怀疑代码写错了。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

331

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

317

2023.10.25

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

556

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

18

2025.12.06

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

789

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

572

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

271

2023.07.24

git提交错误怎么撤回
git提交错误怎么撤回

git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

563

2024.04.09

Golang处理数据库错误教程合集
Golang处理数据库错误教程合集

本专题整合了Golang数据库错误处理方法、技巧、管理策略相关内容,阅读专题下面的文章了解更多详细内容。

132

2026.02.06

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 8.8万人学习

Git 教程
Git 教程

共21课时 | 3.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号