startup.bat をダブルクリックすると Tomcat がクラッシュする問題の解決方法の詳細な説明

startup.bat をダブルクリックすると Tomcat がクラッシュする問題の解決方法の詳細な説明

Tomcat を学習したばかりのプログラマーにとって、これはよくある間違いです。

1. 環境変数の問題

1.1 まず、Java環境が正しく設定されているか、JDKが正しくインストールされているか確認する必要があります。

win+Rでcmdを開き、javaまたはjavacと入力します
次の図は、JDK 構成が正しいことを示しています。

ここに画像の説明を挿入

そうでない場合は、JDK のインストールと構成を参照してください。上記に問題がない場合は、以下を参照してください。

1.2 Tomcatの環境変数設定を確認する

Tomcat の無料インストール版では、Tomcat を起動する際に環境変数や設定情報を読み込む必要があります。この情報がないと環境変数を登録できず、クラッシュしてしまいます。
解決:

1: 解凍した tomcat の bin フォルダで startup.bat を見つけ、右クリックして [編集] を選択します。ファイルの先頭に次の 2 行を追加します。
注:以下のパスは、独自のインストールパスに従ってコピーする必要があります。

SET JAVA_HOME=D:\jdk1.8.0_131 (java jdk ディレクトリ)
SET TOMCAT_HOME=D:\Tomcat\apache-tomcat-9.0.40-windows-x64\apache-tomcat-9.0.40 (解凍された tomcat ファイルのディレクトリ)

図に示すように:

ここに画像の説明を挿入

2. 解凍した tomcat bin フォルダで、shutdown.bat を見つけて右クリックし、「編集」を選択します。ファイルの先頭に次の 2 行を追加します。

注:以下のパスは、独自のインストールパスに従ってコピーする必要があります。

SET JAVA_HOME=D:\jdk1.8.0_131 (java jdk ディレクトリ)
SET TOMCAT_HOME=D:\Tomcat\apache-tomcat-9.0.40-windows-x64\apache-tomcat-9.0.40 (解凍された tomcat ファイルのディレクトリ)

図に示すように:

ここに画像の説明を挿入

設定後、start.bat をクリックして起動します。

2. 港湾占拠問題

環境変数の設定に問題がない場合は、ポートが占有されている可能性があります。
通常、Tomcatのデフォルトポートは8080です。
Windowsシステムの場合は、win+Rを押してcmdを開き、コマンドラインに入力します。

netstat -ano | findstr 8080

現在ポートを占有しているプロセスがあるかどうかを確認するには

ここに画像の説明を挿入

ポートが占有されているのがわかったら、PID(プロセスID)を使用して、どのプログラムがポートを占有しているかを確認できます。コマンドラインに入力します。

タスクリスト | findstr PID

注意: PID は最後の列の番号です。コマンドを入力するときはスペースを忘れないでください。

ここに画像の説明を挿入

ポートを占有しているプロセスを見つけたら、コマンドラインに入力します。

taskkill /f /t /im プロセス名

注: スラッシュの前のスペースは、プロセス名が見つかったプロセス名であることを意味します。

ここに画像の説明を挿入

この時点で、ポートを占有しているプロセスは終了します。このとき、start.bat をダブルクリックすれば問題は発生しません。

これで、startup.bat をダブルクリックすると Tomcat がクラッシュする問題を解決する方法についての記事は終了です。startup.bat をダブルクリックすると Tomcat がクラッシュする問題の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • 起動時に Tomcat がクラッシュする問題の原因と解決策.bat
  • Webプロジェクトがwarパッケージにパッケージ化され、Tomcatがデプロイされると、startup.batが実行され、デプロイメントが直接失敗します。簡単な解決策
  • startup.bat をクリックした後に Tomcat がクラッシュする問題の解決方法
  • tomcatでstartup.batをダブルクリックして起動する理由と解決策
  • startup.bat の実行時に Tomcat がクラッシュする原因と解決策

<<:  MySQL が「operate_time」エラーのデフォルト値が無効であると報告する問題を解決する

>>:  HTML ウェブページにおけるさまざまなフォント形式の詳細

推薦する

Dockerプライベート倉庫の構築と利用の詳細説明

イメージは hub.docker.com に保存できますが、ネットワーク速度が比較的遅いです。内部環...

JavaScript の組み込み Date オブジェクトの詳細な説明

目次日付オブジェクト日付オブジェクトの作成新しい日付()日付を取得する()取得日()月を取得する()...

MySQLは、where in()順序ソートを実装するためにfind_in_set()関数を使用します。

この記事では、MySQL で find_in_set() 関数を使用して where in() の順...

Promise カプセル化 wx.request メソッド

前回の記事では、Promise を使用して小さなプログラム wx.request をカプセル化する実...

js を使用してネットワークカメラを呼び出し、一般的なエラーを処理します

最近、業務上の理由により、Web ページ上のさまざまなネットワーク カメラにアクセスしてデバッグする...

Docker を使用して Jenkins をインストールするためのサンプル コード

Dockerコンテナのインストール時に遭遇しやすい2つの問題1.ポートはすでに割り当てられています(...

HTML テーブル境界制御実装コード

一般的に、テーブルを使用する場合は、常に <table border="1"...

ドラッグアンドドロップによる並べ替えの詳細を実現する js

目次1. はじめに2. 実装3. HTML ドラッグ アンド ドロップ API を使用しないのはなぜ...

初心者向け入門チュートリアル④:サブディレクトリのバインド方法

これが何を意味するのかを理解するには、まずサブディレクトリとは何かを知る必要があります。では、サブデ...

docker windows10共有ディレクトリのマウント失敗の解決策

原因docker スクリプトを実行すると、コンテナを作成できないというエラーが発生します。以下のよう...

CSS3 変換遷移ジッター問題の解決

transform: scale(); スケーリングするとIEブラウザでジッターが発生します変換スケ...

Linux サービスでファイアウォールを有効にする 2 つの方法

方法は2つあります: 1. サービス方法ファイアウォールのステータスを確認します。 [root@ce...

JavaScriptのアンチシェイクとスロットリングとは

目次1. 関数デバウンス1. 画像安定化とは何ですか? 2. 関数のスロットリング2.1 タイマーの...

MySQLのファジークエリのような遅い速度を解決する方法

質問: インデックスは作成されているのに、Like ファジー クエリがまだ遅いのはなぜですか?インデ...