• ベストアンサー

eclipseで、「ポート番号が使用中です」と表示されて困っています。

プログラムの勉強を始めたばかりなので、拙い質問ですが、ご存じの方は、是非、よろしくお願いします・・・。 eclipseを使って、webアプリケーションを作成しようとしたのですが、 JSP作成後、デバッグを行うと、 「localhostのTomcatv6.0サーバーで 必要な幾つかのポート(8005,8080,8009)が既に使用中です。サーバー は既に別のプロセスで稼働中であるか、システム・プロセスがそのポートを使用中である可能性があります。このサーバーを始動するには、他のプロセスを停止するか、ポート番号を変更する必要があります。」 と表示され、デバッグできませんでした・・・。 そこで、Active Portsをダウンロードして使用中のポート番号を調べると、同じ番号のものはありません・・・。 さらに、いろいろネットで調べると、oracleをインストールしているとポート番号が競合する、とかいてあったのですが、oracle10gをインストールしたので、このせいなのでしょうか?? その為、oracleを削除したのですが・・・。 そこまでしか、対処方法はわからず、行き詰まりました。 この場合、一体、どう対処したらよいのでしょうか・・・?? 現在の環境は、 ・windowsXP、jdk1.6.0_03、jre1.6.0_06 ・Tomcat6.0 ・eclipse3.3→eclipseの「設定」からインストールしたTomcatを登録しました。 ・oracle10g 以上、長くなりましたが、本当に困っているので、よろしくお願いします・・・。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

Eclipseでサーバサイドプログラムを作成する場合、 Webアプリのための標準プラグインEclipse Web Tools Project(WTP)がなくてはならないものです。 HTMLやCSS、JSP、XSD等のエディタ、J2EEサーバとの連携機能、 Webサービス構築機能、DBアクセス機能等を提供してくれます。 1)WTPプラグインがインストールされており、 Eclipseウィンドウ全体「ワークベンチ」の左側に プロジェクト・エクスプローラーにServersのフォルダが表示されており、 フォルダ内にlocalhost の Tomcat v5.5 サーバー-config catalina.policy catalina.properties server.xml tomcat-users.xml web.xml が表示されている。 2)Eclipse画面中央部エディタの下部に Javadocビューや宣言ビューは問題ビューと同じ場所にサーバータブとして重ねて表示されている。 3)プロジェクト・エクスプローラーで、プロジェクトを右クリックで表示されるメニューの中の実行→サーバーで実行を選択すると、サーバーで実行のウィンドウから実行した結果のエラーメッセージ localhostのTomcatv6.0サーバーで 必要な幾つかのポート(8005,8080,8009)が既に使用中です。…である。 以上1)から3)を前提としますと、 【原因】 Tomcatが実行中であるためです。  Eclipse Web Tools Project(WTP)は、Tomcatを実行します。 したがって、Tomcatが実行中であるため、既に使用中です。 と警告しているのです。 【対応】 Tomcat ManagerからStop serviceを選択して、Tomcatを停止しておき、 実行→サーバーで実行して、Eclipseウィンドウのサーバータブを見ると Tomcatを実行している様子が見られると思います。 コンソールタブには、ログが表示されると思います。 以上です。

awan
質問者

お礼

あれから、ネットで検索してみたところ、IISがインストールされている状態だったから(?)か、アンインストールすると、無事にデバッグできました!!! 本当に有り難うございました。 もしかしたら、またお世話になるかもしれませんが、その時は、よろしくおねがいします・・・。

awan
質問者

補足

お返事、ありがとうございます! 早速試してみました。 ログ?らしきものがずらずらと表示されました・・・。 以下、ログの一部分なのですが、これは一体、何を意味しているしているのか・・・。 もしご存じなら、ぜひアドバイスをお願いします・・・。 [ログ(?)] 致命的: エンドポイントを初期化中のエラーです java.net.BindException: Address already in use: JVM_Bind:8080 致命的: Catalina.start LifecycleException: プロトコルハンドラの初期化に失敗しました: java.net.BindException: Address already in use: JVM_Bind:8080 致命的: エンドポイントを起動中のエラーです java.net.BindException: Address already in use: JVM_Bind:8080 致命的: Catalina.start: LifecycleException: service.getName(): "Catalina"; プロトコルハンドラの起動に失敗しました: java.net.BindException: Address already in use: JVM_Bind:8080 at org.apache.catalina.connector.Connector.start(Connector.java:1139)

その他の回答 (2)

回答No.3

一応確認方法を XPsp2なら コマンドプロンプトで c:\hoge>netstat -abn これでlistenしているアプリケーションが TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 1636 [hogehoge.exe] みたいに出ます

awan
質問者

お礼

お返事、ありがとうございます! コマンドプロンプトから、netstat -abnで調べると、確かにアドバイス 通りに表示されました。 ということは、ポート番号は競合していないということなのでしょうか ・・・? もう少し、ネットで検索してみます・・・。 本当に有り難うございました!!

  • OKbokuzyo
  • ベストアンサー率43% (130/296)
回答No.1

Tomcat6.0はデフォルトでポート8005,8080,8009を使用します。 なのでそれが競合するのなら使用するポートを変更してやれば良いです。 具体的にはtomcatがインストールされているディレクトリの conf配下にあるserver.xmlに記述されている上記3つのポート番号を変更し、 tomcatを再起動すれば問題は解決されるはずです。 ご存知かもしれませんが、ポートにはウェルノウンポートと それ以外(厳密にはさらに2つのカテゴリーに分かれますが‥)がありますので ポートの設定には注意してください。 この手の質問は「tomcat port 変更」等で調べれば腐るほどサイトがヒットしますので 詳しくはその辺を参照ください。

awan
質問者

お礼

お返事有り難うございます! ポート番号を変更してみたりしていたのですが、 >ご存知かもしれませんが、ポートにはウェルノウンポートと >それ以外(厳密にはさらに2つのカテゴリーに分かれますが‥)があ >りますので >ポートの設定には注意してください。 とのアドバイスにより、ポート番号に注意が必要だったとは・・・。 もう少し、ネットで検索してみます! 本当にありがとうございました!!