- - PR -
複数Tomcatの起動
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-04-08 10:07
肝心なのは、その続きなんですけどね。 > startup.bat > output.log とすると、何が出力されますか? このとき、リダイレクトしていますから、pauseははずしてください。 で、原因としては、javaが見えていない可能性が高いと思います。 > %JAVA_HOME%\bin\java --version と入力して、バージョン情報が正常に表示されますか? Tomcatのバージョンからして、1.4以上が必要と思われますが。 私も、開発の都合で複数のTomcatを同時に立ち上げたりしていますが、 このときに行っているのは、下記の通りのことです。 1.ディレクトリを起動するTomcatのbinに移動 2.CATALINA_HOMEに、起動するTomcatのHOMEを設定 3.JAVA_HOMEを設定 4.PATHの冒頭に、%JAVA_HOME%\binを追加 5.startup.batを実行 | ||||||||
|
投稿日時: 2005-04-08 10:32
pause で見れるのと同じですね。 bin に移動して catalina.bat run やると起動時の出力が見れます。 | ||||||||
|
投稿日時: 2005-04-08 22:31
エラー内容を検出できました。ありがとうございます。
もっと分かりやすくTomcatを2つ単体で動かしてみることにしました。 1.のTomcatは8080ポートを 2.のTomcatは18080ポートを使用しています。 以下のエラーだと1.のサーバがJVMを使用しているため2.側で使えないといっているのでしょうか? ということはJavaも2つインストールしなければいけないんでしょうか? JAVA_HOMEは設定してversionも検出はできました。 ============================================================================= Catalina.start: LifecycleException: プロトコルハンドラの初期化に失敗しました: j ava.net.BindException: Address already in use: JVM_Bind:8080 LifecycleException: プロトコルハンドラの初期化に失敗しました: java.net.BindExce ption: Address already in use: JVM_Bind:8080 at org.apache.coyote.tomcat4.CoyoteConnector.initialize(CoyoteConnector. java:1231) at org.apache.catalina.core.StandardService.initialize(StandardService.j ava:579) at org.apache.catalina.core.StandardServer.initialize(StandardServer.jav a:2246) at org.apache.catalina.startup.Catalina.start(Catalina.java:511) at org.apache.catalina.startup.Catalina.execute(Catalina.java:400) at org.apache.catalina.startup.Catalina.process(Catalina.java:180) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203) Catalina.stop: LifecycleException: このサーバはまだ起動されていません LifecycleException: このサーバはまだ起動されていません at org.apache.catalina.core.StandardServer.stop(StandardServer.java:2213 ) at org.apache.catalina.startup.Catalina.start(Catalina.java:543) at org.apache.catalina.startup.Catalina.execute(Catalina.java:400) at org.apache.catalina.startup.Catalina.process(Catalina.java:180) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203) | ||||||||
|
投稿日時: 2005-04-08 23:17
やっぱ 8080 ポートが競合しているんでしょう。
ほんとうに上記のようになっているか 2. の server.xml を確認しましょう。 | ||||||||
|
投稿日時: 2005-04-11 09:51
最初から動いていたものがひとつありますね。サービスとして動作していたんでしょうか。 それは今、どうなっていますか?
これが、2番目、3番目ということはないでしょうか。 「1.」を起動しようとせず、先に「2.」の方を起動しようとするとどうなります? | ||||||||
|
投稿日時: 2005-04-12 21:15
お返事遅くなって申し訳ありません。
>最初から動いていたものがひとつありますね。サービスとして動作していたんでしょうか。 >それは今、どうなっていますか? サービスとして動いています。 >これが、2番目、3番目ということはないでしょうか。 >「1.」を起動しようとせず、先に「2.」の方を起動しようとするとどうなります? 2を先に起動しようとすると、起動しないで、 Catalina.start: LifecycleException: プロトコルハンドラの初期化に失敗しました: j ava.net.BindException: Address already in use: JVM_Bind:8080 のエラーが出てしまいます、、、。 | ||||||||
|
投稿日時: 2005-04-13 12:03
エラーメッセージの通り、8080ポートが競合しているんですよ。
が、なってないってことですね。 どのようにして、「18080ポートを使用するように設定した」と判断されたのでしょうか。 すべてはNaNさんのご指摘そのままですが、NaNさんへの返信はどうしました? |