it-swarm.com.ru

Сервер Tomcat не запускается как служба:% 1 не является допустимым приложением Win32

Мой сервер Tomcat работает нормально в Eclipse, но когда я пытаюсь запустить сервер, он не запускается. 

Вот ошибки:

[2012-08-15 09:26:09] [info] Procrun (2.0.5.0) started
[2012-08-15 09:26:09] [info] Running Service...
[2012-08-15 09:26:09] [info] Starting service...
[2012-08-15 09:26:09] [197  javajni.c] [error] %1 is not a valid Win32 application.
[2012-08-15 09:26:09] [994  prunsrv.c] [error] Failed creating Java C:\Java\java\jre\bin\server\jvm.dll
[2012-08-15 09:26:09] [1269 prunsrv.c] [error] ServiceStart returned 1
[2012-08-15 09:26:09] [info] Run service finished.
[2012-08-15 09:26:09] [info] Procrun finished.
[2012-08-15 09:29:06] [info] Procrun (2.0.5.0) started
[2012-08-15 09:29:06] [info] Running Service...
[2012-08-15 09:29:06] [info] Starting service...
[2012-08-15 09:29:06] [197  javajni.c] [error] %1 is not a valid Win32 application.
[2012-08-15 09:29:06] [994  prunsrv.c] [error] Failed creating Java C:\Java\java\jre\bin\server\jvm.dll
[2012-08-15 09:29:06] [1269 prunsrv.c] [error] ServiceStart returned 1
[2012-08-15 09:29:06] [info] Run service finished.
[2012-08-15 09:29:06] [info] Procrun finished.
[2012-08-15 09:30:07] [info] Procrun (2.0.5.0) started
[2012-08-15 09:30:07] [info] Running Service...
[2012-08-15 09:30:07] [info] Starting service...
[2012-08-15 09:30:07] [197  javajni.c] [error] %1 is not a valid Win32 application.
[2012-08-15 09:30:07] [994  prunsrv.c] [error] Failed creating Java C:\Java\java\jre\bin\server\jvm.dll
[2012-08-15 09:30:07] [1269 prunsrv.c] [error] ServiceStart returned 1
[2012-08-15 09:30:07] [info] Run service finished.
[2012-08-15 09:30:07] [info] Procrun finished.
[2012-08-15 09:30:57] [info] Procrun (2.0.5.0) started
[2012-08-15 09:30:57] [info] Running Service...
[2012-08-15 09:30:57] [info] Starting service...
[2012-08-15 09:30:57] [197  javajni.c] [error] %1 is not a valid Win32 application.
[2012-08-15 09:30:57] [994  prunsrv.c] [error] Failed creating Java C:\Java\java\jre\bin\server\jvm.dll
[2012-08-15 09:30:57] [1269 prunsrv.c] [error] ServiceStart returned 1
[2012-08-15 09:30:57] [info] Run service finished.
[2012-08-15 09:30:57] [info] Procrun finished.

Что означают эти ошибки и как их исправить?

15
SKR

У меня была точно такая же проблема, и она была вызвана запуском 32-битного Tomcat на 64-битных окнах. (Я использовал XAMPP 1.8.3 в Windows 8 64 бит.)

Первый:

  • Убедитесь, что у вас есть системная переменная Java_HOME, указывающая на вашу папку jdk (не \bin);
  • Убедитесь, что %Java_HOME%\bin; находится в вашей системной переменной %PATH%.

Решение:

  • Удалите службу Tomcat7, если вы уже установили ее;
  • Загрузите 64-битную версию Tomcat 7 для Windows (проверьте эту ссылку, чтобы получить последнюю версию - я использовал 7.0.42 версию);
  • Замените файлы Tomcat7.exe и Tomcat7w.exe в папке C:\xampp\Tomcat\bin файлами, присутствующими в недавно загруженном Zip-файле.

Теперь вы можете установить службу как обычно (через панель управления XAMPP, если вы ее используете), и она должна запуститься просто отлично.

13
acdcjunior

Эта проблема возникает в обоих случаях:

1 - Ваша версия сервера Tomcat является 64-битной, но использует 32-битную версию виртуальной машины Java.
2 - Ваша версия сервера Tomcat является 32-разрядной, но использует 64-разрядную версию виртуальной машины Java.

Убедитесь, что путь к файлу jvm.dll (вкладка «Java» при запуске Tomcat $ {version} w.exe) определяет правильную версию среды выполнения Java (x64 или x86).

6
Etienne Tonnelier

Попробуй это

Скопируйте msvcr71.dll из каталога bin Java в папку bin Tomcat.

Добавьте каталог bin Java в переменную среды Windows.

Скопируйте msvcr71.dll из каталога bin в Java в папку windows\system32.

Убедитесь, что ваш Tomcat указывает на правильную папку jvm.dll.

Apache Tomcat 1

2
Pramod J George

Ваш Tomcat 64-битный, но указывает на 32-битную Java

  1. Откройте конфигурацию Apache Tomcat (из командной строки: Tomcat7w // ES // your-instance)
  2. Перейти на вкладку Java
  3. Установите для виртуальной машины Java желаемую битовую версию, например: C:\Program Files\Java\jre1.8.0_66\bin\server\jvm.dll

Чтобы избежать проблем при создании новых экземпляров, проверьте, куда указывает ваш Java_HOME, и установите для него 64-битную версию jdk (не jre), например C:\Program Files\Java\jdk1.8.0_66

1
Jan Sindberg

Такая же проблема возникает, когда 

  • 64 бит Tomcat 7
  • 64-битный Windows Server
  • 32-битный JDK (в системной переменной JDK_HOME)

Вы можете использовать 32-битный JDK только на 32-битном Tomcat 7. Если вы хотите изменить 64-битный Tomcat 7 на 32-битный

  • Измените переменную CATALINA_HOME на 32-битный путь Tomcat 7
  • Удалить службу Tomcat Windows
  • Установите Tomcat Windows Service
1
hkutluay

Отчет о генерации ошибки в Sage CRM 7.1g: эта ошибка означает, что Tomcat остановился и не может запуститься. Таким образом, решение, приведенное ниже, предназначено как для пользователей Sage CRM, которые получают отчеты в Excel или PDF, так и в любом другом формате и требуют, чтобы Tomcat был запущен. Решение для Tomcat6.

  1. Запустите jdk-8u121 -windows-i586 (это 32-битный JDK)

  2. Настройка переменных среды Имя переменной: Java_HOME Значение переменной: C:\Program Files (x86)\Java\jdk1.8.0_121

  3. Нажмите хорошо, хорошо, хорошо

4. Откройте реестр, нажав; Кнопка Пуск окна ---> Введите «REGEDIT» внутри, где оно читает (Поиск программ и файлов),

Нажмите на REGEDIT, который появляется

  1. В реестре, следуйте по этому пути

    HKEY_LOCAL_MACHINE -> ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ----> Wow6432Node ---> Apache Software Foundation

    Сверните elipses из "Procrun -> Tomcat6 -> Parameters В разделе Parameters вы увидите следующие папки;

    Java Log Начать Прекратите

Щелкните папку «Java» и дважды щелкните Jvm в столбце «Имя».

Откроется всплывающее окно.

Скопируйте значение переменной среды, которое вы установили ранее. В этом случае: C:\Program Files (x86)\Java\jdk1.8.0_121 И вставьте его в пространство «Значение данных», добавив\jvm.dll в конце.

Это полный путь: C:\Program Files (x86)\Java\jdk1.8.0_121\jre\bin\client\jvm.dll

Закройте реестр и вуаля.

Дейв

0
Dav

Если вы хотите запустить Tomcat в качестве службы Windows, самый простой способ - использовать 32-разрядный/64-разрядный установщик службы Windows .

У меня была та же проблема с использованием Tomcat service.bat install, и я понятия не имел, была ли это 32- или 64-битная установка. 

Использование Tomcat 32-бит/64-битный Windows Service Installer помог мне быстро решить эту проблему!

0
alain.janinm

Откройте конфигурацию Apache Tomcat -> Java Tab -> Clic на «использовать по умолчанию»

0
barresoft