Windows更新后VS Code中Java编程出现找不到主类错误求助
问题描述
Windows更新后,在VS Code运行以下Java代码时出现主类找不到错误:
import java.lang.*; class nir4{ public static void main(String args[]){ System.out.print("hi"); } }
报错信息:
Error: Could not find or load main class nir4 Caused by: java.lang.ClassNotFoundException: nir4
解决步骤
调整编译输出路径
打开VS Code设置(快捷键Ctrl+,),搜索java.project.outputPath,将路径修改为当前项目目录下的bin文件夹,比如设置为${workspaceFolder}/bin。避免使用VS Code自动生成的workspaceStorage下的路径,这类路径容易因系统更新或缓存异常出现问题。手动编译运行验证
打开终端切换到代码所在文件夹,依次执行以下命令:javac nir4.java java nir4如果能正常输出
hi,说明JDK环境正常,问题出在VS Code的插件配置;如果仍报错,检查JDK环境变量,执行java -version和javac -version确认版本一致且正常输出。重置Java插件
打开VS Code扩展面板,找到「Language Support for Java(TM) by Red Hat」插件,点击「重新加载」;若无效,卸载后重新安装插件,Windows更新可能导致插件缓存损坏。清理工作区缓存
关闭VS Code,删除路径C:\Users\Admin\AppData\Roaming\Code\User\workspaceStorage\eedc908950fb8b2a0402f354e7b375a7(即报错命令中-cp后的目录),重新打开VS Code后插件会自动生成新的配置文件。检查类名与文件名一致性
确保Java文件名nir4.java和类名nir4完全一致(Java对大小写敏感,即使Windows文件名不区分大小写,编译运行时也需严格匹配)。
内容的提问来源于stack exchange,提问作者Nilkamal Sau

