2015-11-13 2 views
7

Ich verwende Visual Studio Code 0.9.2 auf OS X Yosemite, um eine .java-Datei zu bearbeiten.Taskbefehl mit Platzhaltern in Arg in Visual Studio-Code

ich versuchen, diese Datei mit dem folgenden tasks.json Datei zu kompilieren:

{ 
    "version": "0.1.0", 
    "command": "javac", 
    "isShellCommand": true, 
    "echoCommand": true, 
    "showOutput": "always", 
    "args": ["-d","${workspaceRoot}\/target","${workspaceRoot}\/src\/*.java"] 
} 

Ausführung dieser Aufgabe spiegelt den folgenden Befehl an das Ausgabefenster:

running command$ javac -d /Users/caoimheboers/Desktop/JLab11/target 
/Users/caoimheboers/Desktop/JLab11/src/*.java 

... und das ist gut , aber das Ergebnis der Taskausführung wird dann gemeldet als:

Ich habe es versucht die folgenden:

  1. Kopieren Sie die Echo javac Befehl (einschließlich aller Argumente) aus dem Ausgabefenster und an die Befehlszeile in einem Terminal-Fenster einfügen. Ergebnis: Die einzelne .java-Datei im Ordner/src kompiliert und eine .class-Datei wird im Ordner/target angezeigt. Dies zeigt an, dass die Syntax des Befehls javac (einschließlich aller Argumente) in der Datei tasks.json korrekt ist.

  2. Ersetzen Sie in der Datei tasks.json das Platzhalterzeichen durch den Namen der einzelnen .java-Datei im Ordner/src. Ergebnis: Der VS Code-Task wird einwandfrei ausgeführt und erstellt eine .class-Datei im Ordner/target. Dies zeigt an, dass alles über den Befehl in der Datei tasks.jason mit Ausnahme des Platzhalters OK ist.

Irgendwelche Ideen, was ich falsch mache?

Antwort

0

Ich habe es auch erlebt, es war anscheinend ein Fehler. Derzeit gibt es einen neuen Terminal-Runner, der diesen Fehler behebt. Versuchen Sie, die Aufgaben JSON Schema neue 2.0.0 Version zu ändern, laden Sie das Fenster und alles wird gut:

{ 
    "version": "2.0.0", 
    "command": "javac", 
    "isShellCommand": true, 
    "echoCommand": true, 
    "showOutput": "always", 
    "args": ["-d","${workspaceRoot}/target","${workspaceRoot}/src/*.java"] 
} 

Das damit verbundene Problem ist hier: https://github.com/Microsoft/vscode/issues/16865

Sie haben nicht die entkommen müssen Schrägstrich übrigens.

Verwandte Themen