Как решить проблему пути выполнения Windows 7 Java? - PullRequest
2 голосов
/ 18 февраля 2010

У меня есть готовый программный инструмент, который я разработал на Java.Для этого программного обеспечения требуется достаточное количество памяти, поэтому его следует запускать с параметром Java -Xmx1024M, иначе произойдет сбой.Заказчик запустит программу с именем start.jar, единственной командой которой является запуск системной команды "java -Xmx1024M -jar myProgram.jar"

. Это сработало для Windows XP и Vista, однако последнее обновление Java для Windows7 не помещает каталог java / bin в системный путь.Это приводит к тому, что командная строка сообщает, что java не является распознанной командой.

Мой вопрос: как лучше решить эту проблему?Я понимаю, что мог бы дать клиенту инструкции о том, как поместить его каталог java / bin в системный путь, однако я думаю, что это требует слишком много (целевой клиент не является технически искусным).

Ответы [ 3 ]

4 голосов
/ 18 февраля 2010

Вы можете использовать исполняемый Java-оболочку - например, JSmooth или Launch4J .

0 голосов
/ 18 февраля 2010

Кроме использования вышеупомянутого предложения об использовании исполняемой оболочки, я не думаю, что есть какое-то хорошее решение для этого, которое не включает переписывание в стартовый скрипт ту логику, которую они уже имеют в оболочках.Это, как правило, включает поиск системного пути, реестра ( HKLM \ Software \ JavaSoft \ Java Runtime Environment ) для «правильно установленных» версий и «общих расположений» для JRE и выбора подходящего на основе того, что выЯ сказал, что конфигурация обёртки - это минимальная JRE, независимо от того, выбрана ли последняя версия и т. д. Переписывание этой логики не кажется полезным использованием времени, но это зависит от вас:)

Другая альтернатива (в зависимости отвопросы лицензирования) распространяет копию JRE вместе с вашим приложением в подкаталоге, чтобы вы всегда знали, где он находится и какую версию он использует.Очевидно, что это немного расточительно и потенциально означает использование программного обеспечения вне обычного цикла обслуживания / обновления рабочего стола, но это может дать вам больше контроля / удобства.

0 голосов
/ 18 февраля 2010

Как насчет предоставления им командного файла для запуска? Это может поместить Java в системный путь, если он еще не существует, а затем запустить Java с -Xmx1024M arg

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