ターミナルが閉じていてもJavaプログラムを実行する必要があります....サーバーで....
4 に答える
nohup
Unix および GNU/Linux システムでは、jar であると仮定して、次のように使用してプログラムを実行できます。
nohup java -jar program.jar &
プログラム実行の出力をテキストファイルに取得して、後で表示できるようにするには、次のようにします。
nohup java -jar program.jar > program.log &
Java プログラムをサービスにラップするパッケージもあり、これはベアjava
プロセスよりも管理しやすいものです。
おそらく、「プロセス ラッパー」 ( Launch4Jかな?) を使用して、プロセスに意味のある名前を付けたいと思うでしょう。そうしないと、すべての Java プログラムがjava
プロセス リストのように表示されますが、あまり参考にはなりません。
の「代替」nohup
はscreen
. screen
非常に便利で、任意のタスクを実行し、画面を切り離して、バックグラウンドで実行できます。後で再開できます。
タスクを実行するには:
screen <command_you_want_to_run>
次に
<ctrl> <a> <d>
、画面セッションから切り離します。次回ログインすると、次の方法で screen セッションに再接続できます。
screen -r
複数の画面セッションを実行している場合は、それらの詳細が表示され、次のように接続できます。
screen -r 1234.pts-1.hostname
...
1234.pts-1.hostname
screen -r からの出力から返される値の 1 つです。
の代わりにjavawコマンドを使用しjava
ます。
ヘッドレス モードを使用したい。これにより、画面、キーボード、マウスなどとの通信を試みるすべての呼び出しが失敗しますが、X サーバー (Unix の場合) やコンソールへのアクセス (Windows の場合) が不要になることも意味します。