鱼C论坛

 找回密码
 立即注册
查看: 132|回复: 4

查看文档看得到有class类型的,为什么无法运行呢?

[复制链接]
发表于 2025-3-14 22:28:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
E:\examples\chap02 的目录

2025/03/14  18:40    <DIR>          .
2025/03/14  18:40    <DIR>          ..
2022/02/18  20:41               396 Ex201.java
2022/02/18  20:49               439 Ex202.java
2022/02/18  21:00               373 Ex203.java
2022/02/18  21:07               288 Ex204.java
2022/02/18  21:12               419 Ex205.java
2022/02/18  21:22               296 Ex206.java
2022/02/18  21:30               221 Ex207.java
2022/04/09  16:45               339 Ex208.java
2022/04/09  16:49               363 Ex209.java
2022/02/19  11:46               521 Ex210.java
2022/04/09  15:25               289 HelloWorld.java
2025/03/14  18:43             1,028 Ex201.class
2025/03/14  18:45             1,041 Ex202.class
              13 个文件          6,013 字节
               2 个目录 57,665,519,616 可用字节

E:\examples\chap02>javac Ex201
错误: 仅当显式请求批注处理时才接受类名称 'Ex201'
1 个错误

E:\examples\chap02>java Ex201.class
错误: 找不到或无法加载主类 Ex201.class
原因: java.lang.ClassNotFoundException: Ex201.class

E:\examples\chap02>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2025-3-14 22:30:02 | 显示全部楼层
你的问题可能出现在以下几个方面:

1. 编译命令错误  
你使用了 `javac Ex201` 进行编译,但 `javac` 需要 `.java` 文件作为输入,正确的命令应该是:  
javac Ex201.java


2. 运行命令错误  
你尝试使用 `java Ex201.class` 运行程序,但 `java` 命令不需要 `.class` 后缀,正确的命令应该是:  
java Ex201


3. 类路径问题  
如果 `Ex201` 类在 `package` 里,比如 `package chap02;`,那么你需要在 `E:\examples` 目录下运行:  
java chap02.Ex201


4. 检查 `main` 方法  
确保 `Ex201.java` 文件中包含 `public static void main(String[] args)` 方法,否则 Java 运行时不会找到入口点。  

尝试按照上述方法修正你的命令,看看是否能成功运行!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-3-14 22:41:48 | 显示全部楼层
还是不行
E:\>cd examples

E:\examples>cd chap02

E:\examples\chap02>javac Ex201.java

E:\examples\chap02>java Ex201
错误: 找不到或无法加载主类 Ex201
原因: java.lang.NoClassDefFoundError: Ex201 (wrong name: chap02/Ex201)

E:\examples\chap02>java chap02.Ex201
错误: 找不到或无法加载主类 chap02.Ex201
原因: java.lang.ClassNotFoundException: chap02.Ex201
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-3-14 22:42:04 | 显示全部楼层
无限好 发表于 2025-03-14 22:41
还是不行
E:\>cd examples

E:\examples>cd chap02 ...


你的问题可能是由于 `Ex201.java` 文件中定义了 `package chap02;`,但你在 `E:\examples\chap02` 目录下运行 `java Ex201`,导致 Java 运行时找不到正确的类路径。  

### 解决方案:
1. **检查 `Ex201.java` 是否包含 `package chap02;`**  
   打开 `Ex201.java`,如果文件的开头有 `package chap02;`,说明它属于 `chap02` 包。

2. **正确的编译和运行方式**  
   在 `E:\examples\chap02` 目录下执行以下命令:  
javac -d .. Ex201.java
   这会在 `E:\examples` 目录下创建 `chap02` 目录,并将 `.class` 文件放入其中。  

   然后,切换到 `E:\examples` 目录:
cd ..
   运行 Java 程序:
java chap02.Ex201

3. **如果 `Ex201.java` 没有 `package chap02;`**  
   直接在 `E:\examples\chap02` 目录下运行:
java Ex201

### 可能的错误原因:
- 你在 `chap02` 目录下运行 `java chap02.Ex201`,但 `java` 命令要求从 `package` 的根目录运行。
- `.class` 文件的路径不正确,导致 Java 运行时找不到类。

按照上述方法尝试一下,看看是否能解决问题!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-3-15 12:42:17 | 显示全部楼层
找不到主类,可能是Ex201.java里代码的类名和`Ex201`不一致
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-3 20:11

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表