【发布时间】:2026-01-06 14:40:01
【问题描述】:
我使用的是最新的 Windows 10。我有 JDK 15。最新的 Visual Studio 代码(系统)。在 VS Code 中,我安装了一半的 Java 扩展包,即 Java 语言支持 (Red Hat) | Java 调试器 (Microsoft) | Visual Studio IntelliCode (微软)。所以我这样做只是为了在右上角获得那个运行按钮(默认安装的 VS Code 没有 JAVA 程序的运行按钮),在关闭按钮下方,我可以在 VS Code 中运行 JAVA 程序。我不想出去目录然后打开Power Shell或CMD然后编写java filename.java并运行程序......
现在的问题是,当我单击运行按钮时,我认为在 VS Code 中打开了一个 Power Shell,然后正在编写除“java FileName.java”之外的其他内容。因此,我无法真正看到编译错误是什么。我只能看到line number where the problem is,而不是真正的解决方案。 ||如果我在 VS Code 之外的 PowerShell 中使用此“java FileName.java”运行相同的程序,我可以看到有 some issue at x line and also the solution for the same.
所以我想知道是否有任何方法可以在Visual Studio Code 中获取this type of output。 或者,如果有什么方法可以在我单击顶部的“运行”按钮时简单地告诉 Visual Studio Code 在 VS Code 中运行“java fileName.java”,而不是写很多像 this 这样的东西。
编辑:
我正在运行的代码是这个..... 文件名 - test.java
import java.io.*;
public class SOPFileTest{
public static void main(String arr[]){
try{
// Creating a File object that represents the disk file.
PrintStream o = new PrintStream(new File("A.txt"));
// Store current System.out before assigning a new value
PrintStream console = System.out;
// Assign o to output stream
System.setOut(o);
System.out.println("Test 1");
// Use stored value for output stream
System.setOut(console);
System.out.println("Test 2");
}
catch(Exception e){
System.out.println(e.getMessage());
}
}
现在我注意到了一些东西,它们是:
-When(文件名 == 类名)
---然后(VS代码)
-----在控制台中打印最后一个 System.out.println
-----A.txt 不是在里面创建/写入的
---然后(Powershell)
-----在控制台中打印最后一个 System.out.println
-----A.txt 是在里面创建和/或写入的
-When (FileName != Class Name)
---然后(VS代码)
-----显示的错误与我上面包含的图像相同。
---然后(Powershell)
-----在控制台中打印最后一个 System.out.println
-----A.txt 是在里面创建和/或写入的
所以 powershell 可以按我的意愿工作,VS Code 不是...
【问题讨论】:
-
你能贴出代码让我重现你的问题吗?如果方便的话。
-
是的……我编辑了他的问题……
标签: java powershell visual-studio-code