visual studio code 调试java 错误: 找不到或无法加载主类

如题:
使用官网的两个java插件,来搭建java开发和调试的环境。调试的配置文件如下:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "java",
            "name": "Debug (Launch)",
            "request": "launch",
            "mainClass": "JavaTester",
            "args": ""
        },
        {
            "type": "java",
            "name": "Debug (Attach)",
            "request": "attach",
            "hostName": "localhost",
            "port": 0
        }
    ]
}

当调试的时候一直在报 错误: 找不到或无法加载主类JavaTester的错误。
java.home确定已经配置正确,PC的环境变量也配置完成,classpath也是按要求配置的,且本地终端调试也通过。这里一直找不到主类,是不是mainClass的配置有问题?请教这是配置是否有什么要求?
只想简单的做一些demo类型的java开发,即只运行单个java文件。
麻烦做过类似配置的大神给点指导,多谢~

阅读 18.3k
4 个回答
新手上路,请多包涵

这个问题我也是刚碰到,你用cmd的javac 能编译通过,就应该是vscode的问题,重新建一个就好了。

新手上路,请多包涵

VSCode 的官方dubug是个坑,会把class文件编译到你找不到到的地方(反正到最后我找到了),只要你的类名和安装插件第一次编译出来的类名不一致,就会爆出找不到main类的错误

launch.json添加配置classPaths

{
    "type": "java",
    "name": "Debug (Launch)",
    "request": "launch",
    "classPaths": [
        "(你的vscode编译好的class路径,一般是traget/classes)"
    ],
    "mainClass": "JavaTester",
    "args": ""
},

PS:如何自动编译并生成class?
一般默认使用eclipse方式,即在项目目录下的.classpath文件。
如何配置该文件,请自行百度。
再PS:注意是项目目录,而不是vscode工作区目录。

新手上路,请多包涵

1:把C:UsersAdministrator中.vscode删掉;
2:把C:UsersAdministratorAppDataRoaming中Code文件夹删除;
3:重启就好了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题