なぜ Tomcat が起動できないのでしょうか?

なぜ Tomcat が起動できないのでしょうか?

現象:

Tomcat がインストールされ、Web プロジェクトを展開する準備が整いました。Tomcat を起動しても応答がありません。

Tomcat が起動したことが示されています。ただし、この起動は成功と同じではありません。ブラウザを開いてポート 8080 にアクセスすると、Tomcat が起動していないことがわかります。

インターネット上のほとんどのチュートリアルでは、ポートの使用状況を確認したり、JDK 環境を構成したりする方法を説明しています。しかし実際には、結果を効果的に推測できるように、理由を分析する必要があります (私の最初の間違いは、誤った war パッケージがあり、Tomcat が起動に失敗したことでした。これは、オンライン チュートリアルに従っていた場合は発見できませんでした)

tomcat のログはすべて tomcat ログ ディレクトリに保存されます。tomcat の起動時のログは catalina.***.log に保存されます。*** は日付を表します。現在の日付の catalina.***.log を見つけて、ログ情報から問題を特定できます。

ポートの使用:

この時点で、まずポートを占有しているスレッドを見つけることができます。

lsof -nP -i:8080 

次にスレッドを終了します:

キル -9 pid

ファイルにスペルミスがあります:

エラー メッセージから、この問題の原因はファイルの 2 行目のスペル エラーであることがわかります。ファイルを開くと、ファイルの 1 行目にスペースがあることがわかります。1 行目のスペースを削除するだけです。

<?xml バージョン="1.0" エンコーディング="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
バージョン= "4.0"
メタデータ完了="true">
 
<description> サーブレットの例。</description>
<display-name> MyServlet の例 </display-name>
<リクエスト文字エンコーディング>UTF-8</リクエスト文字エンコーディング>
 
<サーブレット>
<サーブレット名>myServlet</サーブレット名>
<サーブレットクラス>MyServlet</サーブレットクラス>
</サーブレット>
 
<サーブレットマッピング>
<サーブレット名>myServlet</サーブレット名>
<url-pattern>/myservlet</url-pattern>
</サーブレットマッピング>
 
</ウェブアプリ>

これで、Tomcat を起動できない理由に関するこの記事は終了です。Tomcat を起動できないことに関する関連コンテンツの詳細については、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • tomcatでstartup.batをダブルクリックして起動する理由と解決策
  • Tomcat 起動エラー: java.util.zip.ZipException の解決方法
  • tomcat 起動時に startup.bat が点滅する問題の解決方法 [専門的なテストと有効性]
  • Tomcat は正常に起動しますが、アクセスしたすべてのページで 404 例外が報告されます。404 例外の概要と分析
  • Tomcat サービスを開始できない問題の解決策
  • Tomcatの起動時にSecureRandomが非常に遅くなる問題の解決策
  • Tomcat 起動エラーの処理方法 (ポート 8080 が使用中)

<<:  JavaScript の setTimeout() の使用法の概要

>>:  CSS で平均レイアウトを実現するためにネガティブ マージン テクノロジーを使用する方法

推薦する

テキストの円形スクロールアニメーションを実装するミニプログラム

この記事では、参考までに、テキストループスクロールを実現するアプレットの具体的なコードを例を挙げて紹...

Vueはファイルのアップロードとダウンロードを実装します

この記事では、参考までにVueのファイルのアップロードとダウンロードの具体的なコードを紹介します。具...

MySQLの文字セットと検証ルールの詳細な説明

1いくつかの一般的な文字セットMySQL で最も一般的な文字セットには、ASCII 文字セット、ラテ...

MySQL における USING と HAVING の使用法の簡単な分析

この記事では、例を使用して MySQL での USING と HAVING の使用方法を説明します。...

Windows で負荷分散に Nginx+Tomcat を使用するための完全な手順

序文今日は、Prince が Windows で負荷分散に Nginx + Tomcat を使用する...

DockerでHadoopを実行しイメージを作成する方法

車輪の再発明として、ここでは再パッケージ化を使用して Docker ベースの Hadoop イメージ...

ccs3に基づくタイムライン実装方法

Web プロジェクトでは、タイムライン コントロールをよく使用します。この記事では、項目ごとに展開で...

Dockerコンテナの構築と実行のプロセスの詳細な説明

イメージをプルし、コンテナを作成してコンテナを実行するだけです。 docker run -d --r...

WeChatアプレットはシンプルなチャットルームを実装します

この記事では、WeChatアプレットの具体的なコードを共有し、簡単なチャットルームを実装します。具体...

ReactのPropsの簡単な比較

目次クラスコンポーネントのプロパティ比較浅い同等の浅い比較機能コンポーネントの簡単な比較先週面接に行...

MacでDockerがホストマシンにpingできない問題を解決する

解決Docker for Macに付属するLinux仮想マシン(軽量ですが、ソケットファイルを使用し...

vue-cli 3 で vue-bootstrap-datetimepicker 日付プラグインを使用する方法

需要背景最近、Vue を使用してフロントエンド エンジニアリング システムと組み合わせ、以前のデモを...

Vueは完全な選択機能を実装しています

この記事の例では、完全な選択機能を実装するためのVueの具体的なコードを参考までに共有しています。具...

Linux Samba サーバーの超詳細なインストールと構成 (問題解決付き)

目次Samba サーバーの紹介Samba サーバー コンポーネントSamba サーバー関連の設定ファ...

Centos7 で NIS を構成する詳細な手順

目次原理ネットワーク環境の準備インストール前の準備NIS サーバー操作NIS クライアント操作原理N...