なぜ 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 で平均レイアウトを実現するためにネガティブ マージン テクノロジーを使用する方法

推薦する

JavaScript の知識: コンストラクタも関数である

目次1. コンストラクタの定義と呼び出し2. 新しいキーワードの目的3. コンストラクタの問題: メ...

Mysql の主キー インデックスと非主キー インデックスの違いについて簡単に説明します。

目次インデックスとは何か主キーインデックスと通常のインデックスの違いインデックスにはどのデータ構造が...

jQueryのanimateアニメーションメソッドとアニメーションキューイング問題の解決方法の詳しい説明

目次animate() アニメーションメソッドアニメーションキューイングdelay() メソッドアニ...

Vue プロジェクトに Electron を追加するための詳細なコード

1. package.jsonに追加する "メイン": "electr...

ネイティブ js でカスタム難易度のマインスイーパ ゲームを実装する

この記事の例では、マインスイーパゲームを実装するためのjsの具体的なコードを参考までに共有しています...

CUDA8.0とCUDA9.0はUbuntu16.04で共存します

序文Github にある以前のコードには、CUDA 8.0 環境が必要なものもあります。初心者の場合...

React で遅延読み込みを使用して最初の画面の読み込み時間を短縮する方法

目次使用インストールルーティングでどのように使用しますか?読み込み速度の比較最近、中間およびバックエ...

ウェブデザイナーは3つの側面からウェブページを最適化する必要がある

<br />帯域幅の増加に伴い、Web ページ上のオブジェクトも増えているため、Web ...

Linux でプロセスを隠す方法と、遭遇する落とし穴

序文1. この記事で使用したツールは、https://github.com/gianlucabore...

黒、白、グレーの控えめでエレガントなウェブデザインを鑑賞

クラシックな色の組み合わせの中でも、黒、白、グレーの時代を超えた魅力を否定できる人はおそらくいないで...

JavaScript はクラス宝くじアプレットを実装します

この記事では、クラス抽選アプレットを実装するためのJavaScriptの具体的なコードを参考までに紹...

ログインインターフェースの使いやすさとセキュリティのバランスをとる方法

ウェブデザイナーでもUIデザイナーでも、ログインページや登録ページのデザインは必ず経験しなければなら...

MySQL の列から行への変換と年月グループ化の例

以下のように表示されます。 SELECT count(DISTINCT(a.rect_id)) zc...

JSONオブジェクトのキーを置き換える最良の方法

JSON (JavaScript Object Notation、JS Object Notatio...

JavaScript JSON.stringify() の使用法の概要

目次1. 使用方法1. 基本的な使い方2. 2番目のパラメータ - フィルター3. 3番目のパラメー...