コマンドラインからApacheTomcatの停止を開始する方法は? Tomcatがすでに実行されているかどうかを確認し、コマンドを強制終了します
公開: 2019-05-06 Apache Tomcat(または単にTomcat)は、Apache Software Foundation(ASF)によって開発されたオープンソースのWebサーバーおよびサーブレットコンテナです。 Tomcatは、Oracle CorporationのJavaサーブレットおよびJavaServer Pages( JSP
)仕様を実装し、Javaコードを実行するための「純粋なJava」 HTTP web server
環境を提供します。
以下の質問のいずれかがある場合は、適切な場所にいます。
- ローカルホストのTomcatサーバーに必要ないくつかのポート(8080、8081、8082)はすでに使用されています
- Tomcatサーバーエラー–ポート8080はすでに使用されています
- 必要なポート8080が使用中です
- ポート8080はすでにEclipseを使用しています
- Windowsでポート8080を停止する方法
tomcat as Windows Service
設定しました。 TomcatをWindowsサービスとして実行すると、開発セットアップから実稼働環境に移行するときに不可欠な多くの利点が得られます。
利点-1)起動時に信頼性の高い自動起動を設定する
- サーバーがオンラインに戻るかどうかを気にせずに、メンテナンス後にJavaシステムをリモートで再起動したい環境では不可欠です。
利点-2)アクティブなユーザーログインなしでTomcatサーバーの起動をセットアップする
- データセンターでは、Tomcatを実行するためだけにシステムからのアクティブなログインを期待することは合理的ではありません。 実際、Tomcatは、アクティブなモニターが接続されていないブレードサーバーで実行されることがよくあります。 Windowsサービスはシステムが所有しており、アクティブユーザーがいなくても開始できます。
メリット-3)セキュリティの向上
最近、コマンドラインからTomcatサーバーを
start/stop
したかったので、それを実行するためのクイックshallスクリプトを作成したいと思いました。 //XX// ServiceName
の形式でコマンドの下に提供される公式ドキュメント
使用可能なコマンドラインオプションは次のとおりです。
-
//TS//
サービスをコンソールアプリケーションとして実行これはデフォルトの操作です。 オプションが指定されていない場合に呼び出されます。 ServiceNameは、exeサフィックスのない実行可能ファイルの名前であり、Tomcat6を意味します。 -
//RS//
ServiceManagerからのみ呼び出されるサービスを実行します //SS//
サービスを停止します//US//
サービスパラメータを更新します//IS//
サービスをインストールします//DS//
サービスの削除実行中の場合はサービスを停止します
しかし、このようにすると、以下のコマンドが非常に便利でシンプルであることがわかりました。
1)Windows(TomcatがWindowsサービスとして設定されている場合)
- サーバーを
Start
するには:<Tomcat Root> /bin>Tomcat8.exe start - サーバーを
Stop
するには:<Tomcat Root> /bin>Tomcat8.exe stop
2)Windows(バイナリを.zipとしてダウンロードした場合)
- サーバーを
Start
するには:<Tomcat Root> / bin>catalina.bat start
- サーバーを
Stop
するには:<Tomcat Root> / bin>catalina.bat stop
3)Mac / Linux / Unix(バイナリを.zipとしてダウンロードした場合)
- サーバーを
Start
するには:<Tomcat Root> /bin>./catalina.sh start - サーバーを
Stop
するには:<Tomcatルート> / bin> ./ catalina.shstop
以下はすべてcatalina.sh
コマンドパラメータです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Usage : catalina . sh ( commands . . . ) commands : debug Start Catalina in a debugger debug - security Debug Catalina with a security manager jpda start Start Catalina under JPDA debugger run Start Catalina in the current window run - security Start in the current window with security manager start Start Catalina in a separate window start - security Start in a separate window with security manager stop Stop Catalina , waiting up to 5 seconds for the process to end stop n Stop Catalina , waiting up to n seconds for the process to end stop - force Stop Catalina , wait up to 5 seconds and then use kill - KILL if still running stop n - force Stop Catalina , wait up to n seconds and then use kill - KILL if still running configtest Run a basic syntax check on server . xml - check exit code for result version What version of tomcat are you running ? |

スタートアップのスクリーンショット:
Tomcatがすでに実行されているかどうかを確認し、既存のtomcatプロセスを強制終了する方法。
ステップ-1)コマンドps -ef |を使用してプロセスを見つけます。 grep tomcat
1 2 3 |
bash - 3.2 $ ps - ef | grep tomcat 502 56188 1 0 7 : 31PM ttys001 0 : 04.23 / Library / Java / JavaVirtualMachines / jdk1 . 8.0_51.jdk / Contents / Home / bin / java - Djava . util . logging . config . file =/ Users / appshah / Downloads / apache - tomcat - 8.5.4 / conf / logging . properties - Djava . util . logging . manager = org . apache . juli . ClassLoaderLogManager - Djdk . tls . ephemeralDHKeySize = 2048 - classpath / Users / appshah / Downloads / apache - tomcat - 8.5.4 / bin / bootstrap . jar : / Users / appshah / Downloads / apache - tomcat - 8.5.4 / bin / tomcat - juli . jar - Dcatalina . base =/ Users / appshah / Downloads / apache - tomcat - 8.5.4 - Dcatalina . home =/ Users / appshah / Downloads / apache - tomcat - 8.5.4 - Djava . io . tmpdir =/ Users / appshah / Downloads / apache - tomcat - 8.5.4 / temp org . apache . catalina . startup . Bootstrap start 502 56618 55587 0 7 : 34PM ttys001 0 : 00.00 grep tomcat |
ここで、2番目の列の値はプロセスIDです。 私たちの場合は56188
です。
リンクhttp://localhost:8080
にアクセスすると、ウェルカムページが表示されます。
ステップ-2)コマンドkill -9 <プロセスID>を使用してプロセスを強制終了します
1 |
bash - 3.2 $ kill - 9 56188 |
ここで、 56188
はステップ1から取得したprocess ID
です。
これで、リンクhttp://localhost:8080/
が機能しないはずです。