我的 launch.json 文件中需要这么多块吗?

Do I need this many blocks in my launch.json file?

在我的项目的大部分时间里,这个 launch.json 文件都是这样看的。我不完全确定该文件的用途是什么或特定行的作用。昨晚我有一个编译构建失败说它找不到我的主文件“Planner”,即使它工作正常并且在通过 GitHub 桌面程序将我的更新推送到 GitHub 后它崩溃了。无论如何,这让我想知道我是否真的需要我的 launch.json 文件中所有这些非常相似的块,或者我是否真的应该只有一个。我的想法是其他人是文件所在位置的旧变体?我在几台机器上从事过这个项目,pushed/pulled 来自 GitHub 很多。

编辑:

从评论中我应该提供更多信息。抱歉,最初的 post 是在我只有 GitHub 代码可供参考时在工作中完成的,而不是我的 IDE。我有一个在 VSCode 中构建的程序,它的主要 class 名为“Planner”,文件 Planner.java。我在这个项目上工作了六个多月,并且一直在自学 javaFX,因为我的计算机科学 AS 学位实际上只涵盖了 Java 概念,因此它们保持在标准 Java 库中。有了这个,我按照一些教程学习了 JavaFX 在 VSCode 中工作。昨晚我对我的程序做了一些更新 运行 没问题。然后我将它推到 GitHub,关闭我的电脑,然后就完成了。我重新打开 PC 并返回进行我想到的最后一项更改并收到错误消息:“构建失败,你想继续吗?[来源:Java(扩展)] 的调试器]” =15=]

我想我在问两件事,关于理解 launch.json 文件的提示,(我需要写吗,看起来是同一件事,5 次让代码编译和 运行?) 以及可能导致所描述错误的原因的想法。抱歉,这是我第一次 posting,我经常通过阅读其他问题和修复我的问题来使用该网站,但没有经验 posting,如果我问的太宽泛,请告诉我问题,或者不清楚。详情如下:

在终端中:

错误:无法找到或加载主要 class Planner

原因:java.lang.ClassNotFoundException:计划者

在 VSCode 的“问题:”部分:

Project 'SimplePlanner1_52208f3' has no explicit encoding set

[{
"resource": "/C:/Users/travi/AppData/Roaming/Code/User/workspaceStorage/fd9ee5418b12f7a629c4aeb2c52147e1/redhat.java/jdt_ws/SimplePlanner1_52208f3/",
"owner": "_generated_diagnostic_collection_name_#2",
"code": "0",
"severity": 4,
"message": "Project 'SimplePlanner1_52208f3' has no explicit encoding set",
"source": "Java",
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 1,
"endColumn": 1 }]

launch.json 文件:

"version": "0.2.0",
"configurations": [
    {
        "type": "java",
        "name": "Launch Planner",
        "request": "launch",
        "vmArgs": "--module-path \"C:/Users/travi/Documents/Software Development/openjfx-17.0.1_windows-x64_bin-sdk/javafx-sdk-17.0.1/lib\" --add-modules javafx.controls,javafx.fxml",
        "mainClass": "Planner",
        "projectName": "SimplePlanner1_52208f3"
    },
    {
        "type": "java",
        "name": "Launch Planner",
        "request": "launch",
        "vmArgs": "--module-path \"C:/Users/travi/Documents/Software Development/openjfx-17.0.1_windows-x64_bin-sdk/javafx-sdk-17.0.1/lib\" --add-modules javafx.controls,javafx.fxml",
        "mainClass": "Planner",
        "projectName": "SimplePlanner1_cd0129b4"
    },
    {
        "type": "java",
        "name": "Launch Planner",
        "request": "launch",
        "vmArgs": "--module-path \"C:/Users/travi/Documents/Software Development/openjfx-17.0.1_windows-x64_bin-sdk/javafx-sdk-17.0.1/lib\" --add-modules javafx.controls,javafx.fxml",
        "mainClass": "Planner",
        "projectName": "SimplePlanner_69fc3f9d"
    },
    {
        "type": "java",
        "name": "Launch Current File",
        "request": "launch",
        "vmArgs": "--module-path \"C:/Users/travi/Documents/Software Development/openjfx-17.0.1_windows-x64_bin-sdk/javafx-sdk-17.0.1/lib\" --add-modules javafx.controls,javafx.fxml",
        "mainClass": "${file}"
    },
    {
        "type": "java",
        "name": "Launch Planner",
        "request": "launch",
        "mainClass": "Planner",
        "projectName": "Engr290-12-5-21-planner-main_478f1ccb",
        "vmArgs": "--module-path \"C:/Users/travi/Documents/Software Development/openjfx-17.0.1_windows-x64_bin-sdk/javafx-sdk-17.0.1/lib\" --add-modules javafx.controls,javafx.fxml"
    }
]
}

另一个编辑:

我进去并试图删除引用 SimplePlanner1_52208f3 和 运行 代码的块。当 运行 代码不存在时,编译器会自动将以下代码块添加回我的 launch.json 文件。所以也许我找错了树,这是一个更深层次的问题?

{
    "type": "java",
    "name": "Launch Planner",
    "request": "launch",
    "mainClass": "Planner",
    "projectName": "SimplePlanner1_52208f3"
},

如何获取代码 运行 的答案可在此处找到:

谢谢,