2012-06-13 7 views
3


У меня есть Tomcat 7 работает как сервис на 7 сервере выиграть больше года без каких-либо проблем
Сервер имеет много или HDD и память,
Сегодня сервер был вниз, пытаясь начать это я Я получаю сообщение об ошибке:Tomcat 7 не запуститься

2012-06-13 15:15:22 
Commons Daemon procrun stdout initialized 
Error occurred during initialization of VM 
Unable to load native library: Can't find dependent libraries 


Я включил параметр VM на вкладке Java свойств службы от:
C:\Program Files\Java\jre6\bin\client\jvm.dll
к:
C:\Program Files\Java\jdk1.6.0_23\jre\bin\client\jvm.dll


И теперь, похоже, он работает нормально.
Что может быть причиной этой ошибки из-за синего?
Спасибо

+0

У меня была аналогичная проблема, поскольку JVM, используемый для компиляции веб-службы, отличался от версии, используемой для выполнения. Возможно, по той же причине. – vellvisher

+0

Я также испытал эту проблему сегодня! У меня нет установленного jdk, поэтому я еще не пробовал ваше решение. Tomcat работал, но когда я перезапустил, он не запустится снова. –

ответ

4

Я сделал переустановку JRE до версии 6u25, и Tomcat смог начать снова.

Я предполагаю, что что-то должно было испортить зависимость JRE. Единственные недавние установки на сервере были пару дней назад. До этого он не был изменен с начала года. Я список последних установок здесь для справки, но я не утверждаю, что знаю, что они были причиной проблемы:

  • Microsoft SQL Server 2008 R2 Management Objects (x64)
  • Microsoft Web Platform Installer 3.0
  • Microsoft SQL Server System CLR Типы (x64)
  • Microsoft Web Deploy 2.0
  • Google Chrome
2

AFAIK,

Установка Sun/Oracle Java 6 SDK в Windows устанавливает другую JRE внутри папки JDK.

Очевидно, что что-то произошло «на обычной» JRE-установке вашего сервера, возможно, сбой обновления, или кто-то удалил то, что казалось избыточным дубликатом JRE.

Существует/была известная проблема с установщиком JRE:

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7114143

Есть две разные JVMs «клиент» ВМ и «сервер» VM, на некоторых системах вы найдете только либо сервер или клиентскую версию vm, в некоторых системах.

C: \ Program Files \ Java \ jre6 \ bin \ client \ jvm.dll и/или C: \ Program Files \ Java \ jre6 \ bin \ server \ jvm.длл

Ожидаемое поведение на ОС Windows для Java 6 является установка всегда клиента JVM:

http://docs.oracle.com/javase/6/docs/technotes/guides/vm/server-class.html

http://www.oracle.com/technetwork/java/hotspotfaq-138619.html#compiler_types

2

Я просто имел эту проблему произойти после того, как возможность автоматического обновления для Java JRE 7u15 , После проверки всех очевидных и настроек Tomcat, я заметил, что файлы в папке JRE bin не имеют имен после «m». Итак, я удалил Java JRE и сделал новую установку. Томкат начал без проблем. Таким образом, в моем случае оказалось, что виновник был плохим обновлением, хотя он сказал, что он установил все хорошо.