Linux で Spring Boot プロジェクトを開始および停止するためのスクリプトの例

Linux で Spring Boot プロジェクトを開始および停止するためのスクリプトの例

Springboot プロジェクトを開始するには、次の 3 つの方法があります。

1. メインメソッドプログラムを実行する

2. コマンドラインで実行するには、mvn spring-boot:runコマンドを使用します。

3. mvn packpageを使用してjarファイルをパッケージ化した後、java -jar yourapp.jarコマンドラインを使用して実行します。

通常、開発時には最初の 2 つの実行モードを使用し、デプロイと実装時には 3 番目のモードを使用することが多いです。以下では、Linux 環境で springboot プロジェクトを実行および停止するための手順とスクリプトのダウンロードに焦点を当てます。

1. 手順

nohupは実行コマンドをハングアップさせません

通常、Linux で直接使用できます。

java -jar yourapp.jar

プログラムを起動しますが、プロセスが終了するとプログラムはすぐにハングアップします。この場合、nohupを使用する必要があります。

nohup java -jar yourapp.jar > yourapp.out 2>&1 &

しかし、最大の問題は管理が不便だということです。何をするか?

次に、シェルスクリプトを書く

1. スタート

#!/bin/bash
nohup java -jar yourapp.jar -Xms256m -Xmx1024m > yourapp.out 2>&1 &

2. 停止します

#!/bin/bash
PID=$(ps -ef | grep yourapp.jar | grep -v grep | awk '{ print $2 }')
[ ${PID} ]の場合; 
それから
 echo 'アプリケーションは停止しています...'
 echo kill $PID 完了
 $PID を強制終了する
それ以外
 echo 'アプリケーションはすでに停止しています...'
フィ

3. 開始スクリプトと停止スクリプトを統合し、run.shを記述する

#!/bin/bash
echo 'アプリケーションは停止しています...'
ソース stop.sh
echo 'アプリケーションは実行中です...'
ソース start.sh

ビンゴ…

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。

以下もご興味があるかもしれません:
  • Linux 編集の開始、停止、再起動の Springboot jar パッケージ スクリプトの例
  • Centos で SpringBoot プロジェクトのスクリプトを開始および停止する方法
  • Spring Boot が一般的なシェル スクリプトを jar モードで起動する詳細な説明
  • Spring boot + LayIM + t-io を使用してファイルのアップロードを実装し、ユーザー ステータスを監視するサンプル コード
  • Spring Boot のカスタム http フィードバック ステータス コードの詳細な説明
  • Spring Boot の起動、停止、再起動、ステータス スクリプト

<<:  必見の JavaScript 面接質問 10 選のまとめ (おすすめ)

>>:  Alibaba CloudにMySQLをインストールする方法の詳細な説明

推薦する

Docker+Nginx を使ってシングルページアプリケーションをデプロイする

開発から導入まで自分で行うシングルページアプリケーションを開発する場合、ビルドを実行した後 npm ...

ページのレンダリング時間を短縮してページの実行速度を速めます

ブラウザでのページのレンダリング時間をできるだけ短縮するにはどうすればよいでしょうか? この記事は、...

シンプルなタブバー切り替えケースを実現するJavaScript

この記事では、タブバーの切り替え効果を簡単に実現するためのJavaScriptの具体的なコードを参考...

Linux CentOS MySQL データベースのインストールと設定のチュートリアル

MySQLデータベースのインストールに関するメモ、みんなで共有a) MySQL ソースインストールパ...

Vue3 (V) HTTPライブラリaxiosの統合の詳細

目次1. axiosをインストールする2. アクシオスの使用1.ホームページでaxiosを参照する2...

CSS3はアニメーション効果を実現するためにvar()とcalc()関数を使用する。

ナレッジポイントをプレビューします。アニメーションフレーム背景グラデーションvar() と calc...

エンタープライズプロダクション MySQL 最適化入門

Oracle、DB2、SQL Server などの他の大規模データベースと比較すると、MySQL に...

iframe の src を about:blank に設定した後の詳細

iframe の src を 'about:blank' に設定した後、"...

Oracle を MySQL に置き換える際の問題と解決策

目次移行ツールアプリケーション変換mysql8.0 ドライバ パッケージを追加データソース構成の変更...

MySQL データ型 DECIMAL(N,M) における N と M の意味の詳細な説明

同僚から、MySQL データ型 DECIMAL(N,M) の N と M の意味を尋ねられました。言...

Vueプロジェクトでlessを使用するためのヒント

目次序文1. スタイルの浸透1. パターン浸透とは何ですか? 2. 使い方は? 2. ミキシング1....

Dockerイメージのサイズを縮小する6つの方法

2017 年に Vulhub に取り組み始めてから、私は厄介な問題に悩まされてきました。Docker...

Dockerfile を使用して Java ランタイム環境のミラーを作成する方法

現在の環境は次のとおりです。セントロス7.5 docker-ce 18.06.1-ce 1. まずc...

フロントエンドAIカットのコツ(体験談)

AI 画像の切り取りは PS と連携する必要があります。まず、スライスするレイヤーを選択し、それを...

MySQLの整数および文字列インデックスの無効化または暗黙的な変換に関する簡単な説明

目次問題の概要問題の再現問題の拡大結論は問題の概要今日、仕事中に、DBA が突然、SQL に暗黙的な...