You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Windows命令提示符运行包内Java编译文件报错怎么办?

如何在Windows命令提示符中运行包内的Java编译文件?

错误原因分析

你当前在D:\eclipse-workspace-ghj2\ExecJava\src\pkg>目录下执行运行命令,Java虚拟机需要从包的根目录(即src目录)查找带包名的类文件,同时编译后的class文件位置与类路径不匹配,导致找不到主类。

正确操作步骤

方式一:规范编译(class文件单独存放)

  1. 切换到包的根目录(src目录):
    cd D:\eclipse-workspace-ghj2\ExecJava\src
    
  2. 创建用于存放class文件的bin目录(可选但推荐):
    mkdir bin
    
  3. 编译Java文件,指定输出目录到bin:
    javac -d bin pkg/Manager_1.java
    
  4. 运行主类,指定类路径为bin目录:
    java -cp bin pkg.Manager_1
    

方式二:简易编译(class文件与源文件同目录)

  1. 切换到包的根目录(src目录):
    cd D:\eclipse-workspace-ghj2\ExecJava\src
    
  2. 直接编译pkg目录下的Java文件:
    javac pkg/Manager_1.java
    
  3. 运行主类(此时类路径默认是当前src目录,能找到pkg包下的类):
    java pkg.Manager_1
    

你之前操作的问题点

  • 在pkg目录下执行javac Manager_1.java,编译后的Manager_1.class会留在pkg目录,但运行时仍在pkg目录执行java pkg.Manager_1,JVM会尝试在当前pkg目录下找pkg子目录,自然找不到目标类。
  • 必须回到包的根目录(src)执行运行命令,JVM才能正确识别pkg作为包名,找到对应的class文件。

内容的提问来源于stack exchange,提问作者user7208250

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 03:43:14