VS Code 运行 .java 文件而不生成 .class 文件

问题描述

我有一些基本的 Java 知识,我决定从 Intellij 切换到 VS Code。我知道如何从终端编译和运行 java 文件(可能使用其他导入的 .java 文件),但我想使用 vs 代码中的运行图标运行 java 程序。 我不是 100% 肯定,但我认为为了在 vs 代码中运行 Java 程序,你需要一个扩展。为此,我下载了 Java 扩展包。请注意,我已经在我的电脑上安装了最新的 jdk。

安装插件后,我可以使用“运行而不调试”/单击运行图标来运行程序。但是,不会生成 .class 文件。我 control+h 但没有任何隐藏文件夹,vs 代码可能会删除 .class 文件。 程序最初是如何运行的? 在运行具有 main 功能文件之前,我如何配置 vs 代码以编译 java 文件

解决方法

基本上,当你正常运行一个 java 文件时,你用 javac 编译它,然后用 java 运行它(或者类似的东西,有许多不同的可能方法来做到这一点)。如果您继续尝试,可以运行 java filename.java 并跳过正常的 javac 步骤。在 VSCode 的情况下,它会根据您拥有的扩展而有所不同,但有些可能使用简单的 java filename.java 运行代码,而其他可能有不同的设置集。如果您通过搜索您的设置查看您的扩展首选项以及您对 java 的首选项,可能会有一个选项,例如启用“Java 源路径”,它更改了 VSCode 保存编译文件的位置。

,

如果您的项目是一个包含 Java 源文件的文件夹。并且没有使用构建工具(Maven/Gradle)。

如果是这种情况,您可以触发命令 Java: Configure Classpath,然后找到部分 output,然后设置到您的工作区的相对路径。

默认情况下,输出文件存储在工作区存储中。

如果在触发命令后,您看到的是本机 vs 代码设置页面。然后尝试搜索 java.project.outputPath 并为其设置相对路径。