No 'server' JVM at '...'

Я запускаю java-приложение, которое мы распространяем как серверную систему. Я пытаюсь написать программу запуска ("написать" - это некоторое преувеличение, я просто копирую файл Java.exe, чтобы мы могли получить нужное имя в проводнике процессов windows). Этот exe находится в директории bin/ нашего дерева файлов приложений.

Теперь в нашем файловом дереве также есть каталог jre/, в котором, собственно, и находится Java.exe (мы поставляем наш продукт с Java-средой). Когда я использую Java.exe в качестве программы запуска, которая находится в каталоге \jre\jre1.6.0_21\bin, или если я помещаю копию (назовем этот экземпляр 'Orange.exe'), которую я сделал в этот каталог, она работает просто отлично. Но, если я помещу 'Orange.exe' в директорию bin\, то получу следующую ошибку:

Error: no 'server' JVM at 'C:\Program Files\Java\jre6\bin\server\jvm.dll'

Думаю, я понимаю, что происходит - я хочу использовать серверную версию файла jvm.dll, который находится в нашей директории jre. Проблема в том, что я не понимаю, почему он не находится в каталоге jre\jre1.6.0_21 в моем пути к приложению. Я установил переменную окружения JAVA_HOME в это место. Похоже, что по умолчанию используется другое, общесистемное ожидаемое место.

Кто-нибудь знает, как я могу изменить это, чтобы он искал в каталоге окружения java, заданном моим приложением? В идеале это будет переменная среды, так как мне нужно вызывать это приложение с параметрами с помощью пакетного файла.

23
задан Cole Johnson 19 August 2013 в 17:51
поделиться