Я пытаюсь запустить процесс Java, передавая ему несколько параметров, используя bat-файл.Но проблема в том, что cmd только прыгает и ничего не показывает при использовании:
start cmd/C
, поэтому, делая его
start cmd/K
, появляется всплывающее окно cmd, где этоотображается ошибка
'C: \ New' не распознается как внутренняя или внешняя команда, работающая программа или пакетный файл.
В целях тестирования для воспроизведения проблемыВы можете запустить процесс Java в следующем примере.
Я искал решение, но единственной вещью, похожей на проблему, было использование set и после этого для работы с параметром.set "var = content"
Эхо правильно печатает папку с множеством пробелов, таких как: "C: \ New Folder and Spaces"
Код ниже:
SET "currDir=%~dp0"
echo %currDir%
start cmd /K "%currDir%"..\jvm\jre\bin\java.exe -version
Как я могу передать значение ~ dp0 , даже если в нем есть пробелы, без получения вышеуказанной ошибки?Что делать, если я должен использовать его несколько раз в команде запуска, например:
start cmd /K "%currDir%"..\jvm\jre\bin\java.exe -version -Djava.awt.headless=true %JAVA_OPTIONS% -jar "%~dp0MyJar.jar" -home "%~dp0.." %*