javac Foo. java && java Foo в windows терминал vscode не работает - PullRequest
2 голосов
/ 07 августа 2020

Я хотел бы подать команду javac & java одновременно, но это не работает и возвращает исключение ниже:

At line:1 char:17
+ javac Demo.java && java Demo
+                 ~~
The token '&&' is not a valid statement separator in this version.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : InvalidEndOfLine

образ

если я запускаю отдельно, это работает

PS D:\git\ITWeiHanDEV\Java> javac Demo.java

PS D:\git\ITWeiHanDEV\Java> java Demo   

образ

ps:

  • моя версия - java8
  • это windows 10 visual studio code terminal

Ответы [ 2 ]

3 голосов
/ 07 августа 2020

PowerShell версий 6.x и более ранних, включая Windows PowerShell, не поддерживает && и ||, операторы цепочки конвейера - они доступны только в PowerShell [Core] 7 +

В 6.x и ранее вы можете эмулировать поведение && следующим образом:

javac Demo.java; if ($LASTEXITCODE -eq 0) { java Demo }
3 голосов
/ 07 августа 2020

Я попытался изменить тип терминала vscode на cmd не powershell integrated console и запустить ниже скрипт, и он работает

cd "d:\git\ITWeiHanDEV\Java\" && javac Demo.java && java Demo

образ

...