| この記事の要点 |
|---|
|
本稿はeclipseのTomcat起動時等のログがconsole上に出力されない時の対応について説明します。コンソールが空のままだったり、Tomcatが起動失敗しているのに原因が分からない場合の調査方法です。
1. eclipse 本体のログを見る
コンソールが空なら、まず対象プロセスと起動方式を確認します。Eclipse/WTPからの起動、Unixのstartup.sh、前面のcatalina.sh run、Windowsサービスでは出力先が同じではありません。
eclipse 自体がTomcat起動前にこけている場合、コンソールには何も出ません。eclipse のログファイルに原因が記録されています。
|
/ワークスペース名/.metadata/.log |
このファイルを開き、末尾の ERROR や !STACK を確認します。Eclipseやプラグイン側の例外・スタックを確認できます。ただしTomcatの全ログがここへ集約されるわけではなく、原因が必ず分かるとは限りません。Error Logビューも確認します。
2. Tomcat 側のログを見る
標準設定のファイルログはCATALINA_BASE/logsに出ます。CATALINA_HOMEはインストール先、CATALINA_BASEは実行するインスタンスの設定先で、Eclipseでは異なることがあります。次の元のHOMEパス例は、HOMEとBASEが同じで、Unixのスクリプトが標準出力をcatalina.outへ転送する構成の例です。すべての起動方式に適用しないでください。
|
$CATALINA_HOME/logs/catalina.out |
Eclipse/WTPではServersビューで対象Tomcatを開き、Server Locationsと起動構成のVM引数を照合します。-Dcatalina.base、-Dcatalina.home、-Djava.util.logging.config.fileが指定されている場合、その実値を確認します。Locationsだけで独自logging.propertiesやアプリ側ログの出力先まで確定するわけではありません。
3. eclipse のコンソール設定を確認
コンソールが空に見えるだけのケースもあります。次の3点を確認します。
- コンソールビューが別のプロセスに切り替わっていないか: コンソールビュー右上のディスプレイ・アイコンで対象を切り替えられる
- Limit Console Output が小さすぎる: 設定 → 実行/デバッグ → コンソール → Console buffer sizeの現在値を確認し必要な範囲で増やす。上限を超えた古い出力が先頭から削られる設定であり、ログ生成のON/OFFではない。無制限にすると大量出力時のメモリ消費に注意
- Show When Program Writes to Standard Out / Standard Errorを確認する。これは出力時にConsoleを前面へ表示する設定で、OFFならログそのものが止まるという意味ではない
4. プラグインのキャッシュ再初期化が必要な場合
Eclipseの-cleanはOSGiの依存関係解決や拡張レジストリのキャッシュを再初期化するオプションです。ワークスペースの破損修復・プロジェクトのビルド・Tomcat設定修復を一括で行うものではありません。Eclipse側の起動やプラグインに問題があると切り分けた場合に検討します。
|
$ eclipse -clean |
もしくは eclipse.exe / Eclipse.app に -clean オプションを渡して起動すると、プラグインのキャッシュをクリアして起動します。
5. Server ビューの設定を見直す
- サーバー名をダブルクリック → サーバータブを開く
- Server Locations が「Use workspace metadata」になっているか「Use Tomcat installation」になっているかでログ出力先が変わる
- 「Use Tomcat installation」ではBASEがインストール先になる構成を確認する。最終的な出力先は有効なlogging.propertiesや起動構成で判断し、ログを出すためだけにLocationsを変更しない
注意点
- コンソールに何も出ない=起動失敗、ではない。Tomcat自体は起動しているケースもある
- WTPは
logging.propertiesがワークスペース配下にコピーされて使われる場合がある。詳細化には対象loggerと出力handlerの両方のレベルを確認する。loggerだけFINEにしてもConsoleHandlerがINFOならその詳細はコンソールへ出ない。対象を限定し、調査後は戻す - Eclipse/WTPが別のTomcatインスタンス構成をワークスペース配下へ用意する場合がある。EclipseにTomcat本体が必ず内蔵されるという意味ではなく、登録したランタイムとBASEを確認する
起動方式ごとの確認先
| 起動方法 | 標準出力・標準エラー | 注意 |
|---|---|---|
| Eclipse/WTP | 対象TomcatプロセスのConsole。起動構成の出力設定も確認 | catalina.outの存在を前提にしない |
| Unix startup.sh / catalina.sh start | 通常BASE/logs/catalina.out。CATALINA_OUTで変更され得る | 日時付きcatalinaログとは別の仕組み |
| catalina.sh run | 起動した端末などの前面出力 | 外部で転送しなければcatalina.outは作られない |
| Windowsサービス・systemd・コンテナ | サービス管理/起動設定に従う | Unix startと同じファイル名とは限らない |
上の方法を試すために、Eclipseで動いているTomcatへ別のstartup.shを重ねて起動しないでください。ポート競合や別インスタンスのログを見てしまう原因になります。
標準出力とログファイルを区別する
Tomcatの既定JULI設定では、ConsoleHandlerとファイルhandlerが出力を扱います。日時付きcatalina.YYYY-MM-DD.logやlocalhost.YYYY-MM-DD.logはlogging.propertiesの設定を確認します。一方catalina.outはUnix起動スクリプトが標準出力・標準エラーを転送するファイルです。アクセスログやアプリ独自のLogback/Log4j設定も別なので、起動ログの代わりとして一括で扱わないでください。
安全な切り分け順
- Serversビューの起動状態、対象プロセス、Consoleの選択とスクロールロックを確認する。
- 起動できていないならEclipse Error Logと起動直後の例外を確認する。
- 起動構成のBASE、HOME、logging.propertiesを照合し、実際のファイルhandlerのdirectoryを確認する。
- ファイルには出るがConsoleへ出ないなら、ConsoleHandlerの登録・レベル、起動構成の出力設定を確認する。
- 両方に出ないなら、アプリ独自のlogger・handler・対象カテゴリ、別プロセスを見ていないかを確認する。
ログやVM引数には認証情報・接続URL・個人情報が含まれる場合があります。調査のために全文を公開しないでください。.metadataやlogsを削除して症状を隠す操作も勧めません。
検証した範囲
Tomcat 9.0.122 / Java 21の隔離コンテナで、HOMEとBASEを分けてrun/startを実行しました。双方でBASE/logsの日時付き起動ログを確認し、runは前面出力でcatalina.outなし、startはcatalina.outへ出力する違いを確認しました。Eclipse/WTPの実画面、Windowsサービス、独自アプリの全設定は未検証です。UI表記・既定値・プラグインは使用版で確認してください。
一次資料: Tomcat 9 Logging、Eclipse WTP Tomcat FAQ、Eclipse Console設定、Eclipse起動オプション(2026年10月確認)。
子ページはありません
- Pleades導入方法(Windows)
- Tomcatの起動ボタンを表示
- 色・テーマの変更
- Tomcatプロジェクトのディレクトリ構成
- プロジェクトをTomcatプロジェクトとして認識させる方法
- Webアプリケーションのデプロイ方法
- 便利ショートカット一覧
- エラー一覧
- サーバーの設定
- サーバーとプロジェクトの紐づけ
- Tomcatの起動時のログがconsole上に表示されない時の対応
- macOSで複数のワークスペースを起動させる方法
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- プロジェクトをTomcatプロジェクトとして認識させる方法 2026-10-07 22:32:50
- MySQLの1366 Incorrect string value|Laravelの文字コード・絵文字エラー 2026-10-07 21:54:03
- curlの証明書ホスト名不一致|旧エラー51・現行60の確認と対処 2026-10-07 21:54:03
- LaravelのMassAssignmentException|fillableの原因と安全な対処 2026-10-07 21:54:03
- Eclipse で Tomcat の起動ログがコンソールに出ない時の確認手順 2026-10-07 21:54:02
- MySQLにおける中央値(Median)の導き方(バージョン8未満) 2026-10-07 13:49:45
- getInputForward 2026-10-07 13:41:15
- JSONから配列に変換 2026-10-07 13:41:15
- ビューから値をモデルに格納しコントローラーで受け取る方法 2026-10-07 13:23:41
- Laravelのテーブル作成と定義変更|マイグレーション・up/down・注意点 2026-10-07 13:23:41
- NumPy 配列に要素を追加する方法 (append / concatenate) 2026-10-07 13:23:41
- MariaDB・MySQLで現在日時を取得する方法|NOW・タイムゾーン・保存型 2026-10-07 13:13:36
- 【django】テンプレートで定数を使用する方法 2026-10-07 13:10:15
- Spring BootにおけるApplication.propertiesの環境依存設定の分割方法 2026-10-07 12:09:35
- Not supported for DML operations【Springエラー】 2026-10-07 11:09:38