Tomcat 7 получение CreateJavaVM ошибка

у меня есть сервер Apache tomcat 7.0.5 на сервере Windows R2, и я развернул на нем webApp ( java JSF), все работало нормально, но он внезапно остановился и не будет работать снова. когда я пытаюсь запустить его, он говорит мне: "ошибка 1067: процесс был неожиданно завершен" и в журналах я получаю эти файлы:

tomcat7-stdout.2012-08-08.log

2012-08-08 18:00:06 Commons Daemon procrun stdout initialized

Коммонс-демон.2012-08-08.log

[2012-08-08 19:02:30] [info]  Commons Daemon procrun finished
[2012-08-08 19:13:02] [info]  Commons Daemon procrun (1.0.4.0 64-bit) started
[2012-08-08 19:13:02] [info]  Running 'Tomcat7' Service...
[2012-08-08 19:13:02] [info]  Starting service...
[2012-08-08 19:13:02] [error] CreateJavaVM Failed
[2012-08-08 19:13:03] [info]  Service started in 1000 ms.
[2012-08-08 19:13:03] [info]  Run service finished.
[2012-08-08 19:13:03] [info]  Commons Daemon procrun finished

tomcat7-stderr.2012-08-08.log

2012-08-08 18:00:06 Commons Daemon procrun stderr initialized
Please use CMSClassUnloadingEnabled in place of CMSPermGenSweepingEnabled in the future
Unrecognized VM option '+HeapDumpOnOutOfMemoryError '

поскольку у меня была ошибка памяти "perm gen", я добавил некоторые вещи в свои свойства Apache Tomcat, следуя этой ссылке как обращаться с Пермским генератором

поэтому мои параметры Java выглядят следующим образом:

-Dcatalina.home=C:Program FilesApache Software FoundationTomcat 7.0
-Dcatalina.base=C:Program FilesApache Software FoundationTomcat 7.0
-Djava.endorsed.dirs=C:Program FilesApache Software FoundationTomcat 7.0endorsed
-Djava.io.tmpdir=C:Program FilesApache Software FoundationTomcat 7.0temp
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=C:Program FilesApache Software FoundationTomcat 7.0conflogging.properties
-XX:+CMSClassUnloadingEnabled
-XX:+CMSPermGenSweepingEnabled
-XX:PermSize=256m
-XX:MaxPermSize=256m
-XX:+HeapDumpOnOutOfMemoryError 

есть идеи, почему сервер больше не запускается? Спасибо!

~Myy

4 ответов


после нескольких часов, пытаясь понять это, я, наконец, нашел его. У меня было дополнительное пространство в конце команды VM.

 '+HeapDumpOnOutOfMemoryError ' 

который давал мне непризнанный вариант VM.....

Спасибо за чтение, надеюсь, когда вы получаете эту ошибку, вы можете принять дополнительные меры предосторожности для проверки синтаксиса.


для управления памятью вам нужно установить некоторые параметры Xms и Xmx

  • Xms управляет начальным размером кучи
  • Xmx управляет максимальным размером кучи

таким образом, попробуйте добавить:

-Xms=256m -Xmx=256m

в отношении


ошибка находится на опции "HeapDumpOnOutOfMemoryError", которая даже не указана в вашем сообщении. Можете ли вы опубликовать экранную печать вкладки "Java" с экрана сервиса "tomcat" (аналогично ссылке, которую вы предоставили) ? Это расскажет нам фактические параметры, которые вы используете, а также память, которую вы установили.


скопировать файл msvcr71.dll из bin dir вашей установки java в bin dir установки tomcat.