Запустите файл war в командной строке, используя PowerShell - PullRequest
0 голосов
/ 10 июня 2019

Мне нужно развернуть файл war в расположении в D:\Temp\$todaydate в командной строке от имени администратора с помощью PowerShell, поэтому моя команда должна открыть приглашение cmd от имени администратора в пути D:\Temp\$todaydate запустить Javapath "\ apps \ wsserver \ 9.0 \ base \ java \ 8.0 \ bin \ jar.exe "-cvf foo.war`

Я пытался использовать Start-Process -Verb "RunAs", но, поскольку я новичок в PowerShell, я не смог закончить код

Start-Process -java "jar.exe" -ArgumentList "/K cd /d D:\temp\$todaydate" -Verb "runas"

1 Ответ

0 голосов
/ 10 июня 2019

Мое предположение $todayDate будет фактической датой. Вы можете попробовать использовать оператор вызова (&) для вызова Java.

$d =((get-date).ToShortDateString()) 
$dashDate = $d -replace "/", "-"
$dPath ="D:/temp/$dashDate" 
New-Item $dPath - ErrorAction SilentlyContinoue
Push-Location
Set-Location $dPath
# Use absolute path to Java.exe and war file in below statement 
& "java.exe -cvf foo.war" 
Pop-Location

Если вам нужно разрешить имена переменных при вызове Java, используйте invoke-expression вместо оператора вызова.

Позвоните оператору :

Запускает команду, сценарий или блок сценария. Оператор вызова, также известный как «оператор вызова», позволяет запускать команды, которые хранятся в переменных и представлены строками или блоками сценариев.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...