タイトル: サーバーとプロジェクトの紐づけ
SEOタイトル: Eclipse サーバー (Tomcat) とプロジェクトの紐づけ手順
| この記事の要点 |
|
前提
- Eclipse に Tomcat ランタイムが登録済み(ウィンドウ → 設定 → サーバー → ランタイム環境)
- サーバービューに Tomcat サーバが追加済み(サーバービュー右クリック → 新規 → サーバー)
- 対象プロジェクトが動的 Web プロジェクトであること(Java プロジェクトでは紐づけ不可)
紐づけ手順
- Eclipse 下部の サーバービュー (Servers) を開く(表示されていない場合: ウィンドウ → ビューの表示 → サーバー)
- 紐付けたいサーバを右クリック → 「追加および除去 (Add and Remove...)」を選択
- 表示されるウィンドウで:
- 左ペイン「Available」: サーバに追加可能なプロジェクト一覧
- 右ペイン「Configured」: 既に紐付いているプロジェクト
- 追加したいプロジェクトを左ペインから選択 → 「追加 (Add >)」ボタン
- 「完了 (Finish)」を押す
- サーバビューに、紐付けたプロジェクトが子要素として表示されれば成功
紐づけ後の確認
- サーバを起動(▶ ボタンまたは右クリック → Start)
- コンソールビューに
INFO: Server startup in xxx ms等が出れば起動成功 - ブラウザで
http://localhost:8080/プロジェクト名/にアクセス - Eclipse の Web ブラウザ内蔵表示: サーバービューでサーバを右クリック → Debug on Server でも可能
追加対象に出てこない場合
「Available」ペインに対象プロジェクトが表示されないのは以下が原因:
| 原因 | 対処 |
|---|---|
| 動的 Web ファセットが未設定 | プロジェクト右クリック → プロパティ → プロジェクト・ファセット → 動的 Web モジュールにチェック |
| ターゲット・ランタイムが Tomcat になっていない | プロパティ → ターゲット・ランタイムで Tomcat にチェック |
| プロジェクトが「閉じている」 | 右クリック → プロジェクトを開く |
| Servlet バージョンと Tomcat バージョンの不一致 | 例: Servlet 5.0 (Jakarta) は Tomcat 10 以上が必要 |
| すでに別のサーバーに紐付け済み | そちらから除去するか、同時運用なら問題なし |
除去(紐づけ解除)の手順
- サーバービューで対象サーバを右クリック → 「追加および除去」
- 右ペインから外したいプロジェクトを選択 → 「< 削除 (Remove)」
- 「完了」
- もしくはサーバビューに表示されるプロジェクト直接右クリック → 「削除」でも可
サーバーの「Publish」(デプロイ)について
紐付け後、Eclipse はプロジェクトの変更を Tomcat に Publish(デプロイ)します:
- 自動 Publish: 既定でファイル変更時に自動反映
- 手動 Publish: サーバ右クリック → Publish (Ctrl + Shift + P)
- Publish 動作の設定: サーバをダブルクリック → Publishing セクション
- 「Never publish automatically」: 開発中に頻繁なリロードを抑制したい場合
- 「Automatically publish after a build event」: ビルド完了ごとに反映
「Use Tomcat installation」 vs 「Use workspace metadata」
サーバ設定をダブルクリックして開く「サーバーの場所」項目には 2 つの選択肢:
| オプション | 動作 |
|---|---|
| Use workspace metadata | Eclipse のワークスペース内に展開(外部 Tomcat の webapps/ に影響しない) |
| Use Tomcat installation (推奨) | 実 Tomcat の webapps/ にデプロイ。コマンドラインからも同じ Tomcat を起動可能 |
関連
- サーバービューが表示されない: ウィンドウ → ビューの表示 → その他 → Server → サーバー
- Tomcat が起動しない: ポート 8080 が他プロセスで使用中の可能性。
netstat -ano | findstr 8080で確認 - 404 エラー: コンテキストパスを確認。プロジェクト右クリック → プロパティ → Web Project Settings の Context root
- 変更が反映されない: クリーン → ビルド → サーバ右クリック → 「Clean...」でサーバ側もクリーン