1

У меня установлена Win7 Pro x64 Box с JRE 7u80 и 8u60 (обе версии i586), так как у меня есть два приложения, которым для запуска требуется либо одно, либо другое.

Я знаю, что могу запускать JAR-файлы, вызывая пакет с соответствующим путем к java.exe, вот что я попробовал:

start "c:\Program Files (x86)\Java\jre7\bin\java.exe" "c:\samplepath\some.jar"

(Так должно быть

start "c:\Program Files (x86)\Java\jre7\bin\java.exe" -jar "c:\samplepath\some.jar"

согласно документации, но ключ -jar приводит к ошибке, которая не может быть найдена)

Этот вызов запускает приложение без проблем, пока Java 8 не установлена, что приводит меня к выводу, что, вероятно, все в порядке.

Пока установлена Java 8, этот вызов ничего не делает - ну почти. Я могу видеть процесс Java в диспетчере задач в течение нескольких секунд, затем он исчезает без следа, нет сообщения об ошибке или что-то еще.

Я даже удалил запись Java из% path% и перезагрузился, изменил порядок установки JRE, деактивировал Java 8 в панели управления Java, не повезло. Если установлена Java 8, мой jar не запустится.

Разговор с разработчиком не вариант, так как он больше не доступен. У меня нет идей здесь. Может кто-нибудь помочь с тем, что я мог бы попробовать дальше?

Прямо сейчас я храню установочные файлы на рабочем столе, чтобы установить и выгрузить Java 8 по требованию, что является довольно нелепым и отчаянным способом справиться с этим :-)

1 ответ1

1

Но ключ -jar приводит к ошибке, которая не может быть найдена

Ваш стартовый синтаксис неверен:

  • Если title отсутствует, а command заключена в кавычки "..." (поскольку она содержит пробелы), то она неверно интерпретируется как title .

  • В вашем случае "c:\Program Files (x86)\Java\jre7\bin\java.exe" интерпретируется как title а -jar как команда (которая, конечно, не может быть найдена).

Ваша команда должна быть:

start "title" "c:\Program Files (x86)\Java\jre7\bin\java.exe" -jar "c:\samplepath\some.jar"

Вы можете использовать "" (пустую строку) в качестве title если вы предпочитаете:

start "" "c:\Program Files (x86)\Java\jre7\bin\java.exe" -jar "c:\samplepath\some.jar"

Синтаксис

START "title" [/D path] [options] "command" [parameters]

Ключ:

title       Text for the CMD window title bar (required.)
path        Starting directory.
command     The command, batch file or executable program to run.
parameters  The parameters passed to the command.

...

Всегда включайте TITLE, это может быть простая строка типа "My Script" или просто пара пустых кавычек ""

Согласно документации Microsoft, заголовок является необязательным, но в зависимости от других выбранных параметров могут возникнуть проблемы, если он не указан.

Начало источника

Дальнейшее чтение

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .