簡體   English   中英

在 Visual Studio Code 中運行 Java 程序時出現問題

[英]Problem running Java programs in Visual Studio Code

我正在嘗試讓 Java 程序在 Visual Studio Code 上運行。 我已經下載了 Microsoft 擴展,從 Oracle 下載了 JKE,現在我正在嘗試運行眾所周知的“Hello World”Java 程序以確保它正常工作。 這是我的程序(我是從“入門”教程中得到的,所以應該沒問題):

class QuickStart {
    public static void main(final String[] args) {
        System.out.println("Hello, World.");
    }
}

這是我運行時發生的情況:

(my files)>  cd 'c:\Users\Janet\Documents\Matthew's Homeschooling\VSC Programs\APCSA'; & 
'c:\Users\Janet\.vscode\extensions\vscjava.vscode-java-debug-0.28.0\scripts\launcher.bat' 'C:\Program Files\Java\jdk-14.0.2\bin\java.exe' '--enable-preview' '-XX:+ShowCodeDetailsInExceptionMessages' '-Dfile.encoding=UTF-8' '-cp' 'C:\Users\Janet\AppData\Roaming\Code\User\workspaceStorage\5eda06847dc66aa5b01dbd290d4e0d18\redhat.java\jdt_ws\APCSA_a6725e29\bin' 'QuickStart'
>>

如您所見,它進入了一些奇怪的外殼。 然后當我再次嘗試運行它時,我收到此錯誤:

>>  cd 'c:\Users\Janet\Documents\Matthew's Homeschooling\VSC Programs\APCSA'; & 'c:\Users\Janet\.vscode\extensions\vscjava.vscode-java-debug-0.28.0\scripts\launcher.bat' 'C:\Program Files\Java\jdk-14.0.2\bin\java.exe' '--enable-preview' '-XX:+ShowCodeDetailsInExceptionMessages' '-Dfile.encoding=UTF-8' '-cp' 'C:\Users\Janet\AppData\Roaming\Code\User\workspaceStorage\5eda06847dc66aa5b01dbd290d4e0d18\redhat.java\jdt_ws\APCSA_a6725e29\bin' 'QuickStart'
Set-Location : A positional parameter cannot be found that accepts argument 's'.
At line:1 char:2
+  cd 'c:\Users\Janet\Documents\Matthew's Homeschooling\VSC Programs\AP ...
+  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Set-Location], ParameterBindingException
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
 
Hello, World.

所以它確實打印出“Hello World。”,但它吐出一個錯誤,我必須運行它兩次。 如何通過運行一次我的 Java 程序而沒有錯誤?

這個問題的答案是仔細檢查,三重檢查你的文件名。 問題在於,使用 Visual Studio Code 運行程序的方式(即點擊運行按鈕),任何'都可能導致嚴重問題。 這是因為 VS Code 使用'來引用文件路徑。 感謝 Eliott Frisch 向我指出這一點。

對此有兩種可能的解決方案:

  1. 更改文件夾名稱以刪除有問題的字符。 然而,就我而言,我的文件夾正在運行程序,所以我不能這樣做。 這導致我...

  2. 創建一個新文件夾並將您的程序移動到那里。 在我看來,這是最好的解決方案,因為無論如何您通常都需要一個單獨的程序文件夾。

請注意,這對於 Java 程序尤其重要,因為在 Visual Studio Code 中,您不能使用java name.java運行 Java 程序。 同樣,這對於 Python 程序來說並不重要,因為它們可以使用python name.py運行,因此不需要任何文件名。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM