Tomcat6.0が起動しない

  • 現象

XP SP3の環境にJDK6Update14+Tomcat6.0.20をインストール、起動しようとしても起動に失敗する。

イベントログには

Apache Tomcat 6 は次のサービス固有のエラーで終了しました: 0 (0x0)
イベントID:7024


以下にインストール手順の概要は、
JDKインストール
JAVA_HOMEの設定、OS再起動
Tomcatのインストール
・CATALINA_HOMEの設定、OS再起動

この手順でインストールし、コンピュータの管理のサービスから、Apache Tomcat 6を起動すると、起動に失敗した旨のメッセージが出る。

また、Tomcatでインストールされるtomcat6w.exeから実行できるApache Tomcat 6 Propertiesから起動しようとしても、Service StatusがStoppedのまま変わらない。
その際には何も起動に失敗している旨などのメッセージも出ていない。

  • 詳細

イベントログには

Apache Tomcat 6 は次のサービス固有のエラーで終了しました: 0 (0x0)
イベントID:7024

とエラー

Tomcatのログ(jakarta_service_????????.log)には

[2009-07-09 09:51:11] [info] Procrun (2.0.4.0) started
[2009-07-09 09:51:11] [info] Running Service...
[2009-07-09 09:51:11] [info] Starting service...
[2009-07-09 09:51:11] [174  javajni.c] [error] 指定されたモジュールが見つかりません。
[2009-07-09 09:51:11] [994  prunsrv.c] [error] Failed creating java C:\app\Java\jre6\bin\client\jvm.dll
[2009-07-09 09:51:11] [1269 prunsrv.c] [error] ServiceStart returned 1
[2009-07-09 09:51:11] [info] Run service finished.
[2009-07-09 09:51:11] [info] Procrun finished.


Tomcatが使うポートが衝突しているものがないか確認した。
Tomcatが使うポートはデフォルトでは、8005、8009、8080、8443くらい
しかし、衝突するポートはない

解決策がここにあった

JavaJDKなりJREなり)をインストールしたフォルダを検索する
とmsvcr71.dllが何個か見つかります。

多分どれでも大丈夫なので、それをsystem32フォルダにコピーしたら、
無事Tomcatが起動しました。

とのこと

ただし、まっさらのPCにインストール数台PCにインストールしながら、起きたり起きなかったりするので、なんでmsvcr71.dllが正常にコピーされない場合があるのか不明

その他参考
http://forums.sun.com/thread.jspa?threadID=5121172