Подтвердить что ты не робот

Нет 'сервер' JVM в '...'

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

Теперь у нас также есть каталог jre/в нашем дереве файлов, в котором фактически находится Java.exe(мы отправляем наш продукт с помощью среды Java). Когда я использую Java.exe в качестве запуска, который находится в \jre\jre1.6.0_21\bin, или если я поместил копию (назовите этот exectuable '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-приложений? В идеале это будет переменная среды, так как мне нужно вызвать это приложение с параметрами с помощью пакетного файла.

4b9b3361

Ответ 1

Существует небольшая уловка для запуска JVM сервера:

  • Скопируйте папку "server" из примера JDK JRE bin: C:\Program Files\Java\jdk1.6.0\jre\bin\server
  • Вставьте папку "server" в пример папки JRE bin: C:\Program Files\Java\jre1.6.0\bin
  • Готово

Подробнее см. официальный readme.

Ответ 2

Я только что боролся с этой же проблемой в Eclipse, и я отметил, что, как было предложено ответом выше, JBoss сайт имеет поток по этому вопросу, говорящий так же, как и ответ выше, чтобы скопировать файлы из jdk в папку jre.

Я заметил, что вы можете избежать необходимости делать это, если вы определяете runtime как jdk при создании сервера. Я не нашел, как редактировать существующий сервер.

eclipse Screenshot

Ответ 3

AFAIK, JRE обычно не поставляется с VM сервера (только клиентская VM). Если вам действительно нужна виртуальная машина сервера, вам нужно использовать установку JDK.

См. Страница загрузки Java Java для разработчиков для JRE с VM сервера.

Ответ 4

У меня была такая же проблема, но в моем случае я просто неправильно обновил JAVA_HOME и мою PATH для моего недавно установленного JDK. Я просто обновил его до моего нового местоположения JDK, и сервер начал работать нормально.

Ответ 5

Windows ищет библиотеки DLL в переменной среды LIBPATH.

И убедитесь, что ваш 1.6.0_21 находится где-то сначала в PATH.

Ответ 6

Я решил ту же проблему, установив путь JAVA_HOME на C:\Program Files (x86)\Java\jre1.8.0_131\bin

Ответ 7

Убедитесь, что файл server/jvm.dll должен быть там, когда мы пытаемся запустить такие серверы, как servicemix.

Скопируйте папку "сервер" из примера папки JDK JRE: C:\Program Files\Java\jdk1.6.0\jre\bin\server

Вставьте папку "server" в пример папки JRE bin: C:\Program Files\Java\jre1.6.0\bin

Я столкнулся с проблемой, я прошел выше... Это нормально работает.

Спасибо!