Saya memiliki toples yang berjalan selamanya (infinite loop dengan soket mendengarkan thread) dan membutuhkannya berjalan di latar belakang setiap saat. Contohnya adalah: "java -jar test.jar" Bagaimana saya melakukan ini? Terima kasih sebelumnya!
beberapa cara:
menambahkan &
di belakang. Namun, menggunakan ini, program masih akan dihentikan jika Anda menutup terminal yang memulai program.
Mulai screen
sesi, dan mulai program di dalamnya; Anda dapat melepaskan screen
sesi dan menutup terminal. Kemudian, Anda dapat melampirkan ke sesi lagi dan menemukan diri Anda kembali pada konsol seolah-olah Anda sudah berada di sana selama ini. Namun, Anda harus memulai sesi layar sebelum menjalankan program, dan jika Anda lupa melakukannya, Anda tidak dapat melakukan apa-apa.
Gunakan disown
kontrol pekerjaan dari shell Anda. Ini akan melepaskan tugas dari tty Anda dan program Anda tidak akan dihentikan ketika tty ditutup. Namun, saya tidak berpikir ada cara untuk memasang kembali pekerjaan yang tidak diakui.
Prompt baris perintah yang selalu saya gunakan untuk jangka waktu yang lama untuk bertahan melalui logoff adalah "nohup" jadi dalam kasus Anda adalah
nohup java -jar test.jar &
& Penting agar Anda dapat menjalankan shell lain. Saya percaya ini tidak akan bertahan melalui reboot.
Jika dengan "setiap saat", Anda bermaksud memulai ketika mesin melakukan boot, Anda harus memulainya sebagai bagian dari skrip boot-time. Cara kotor untuk melakukan ini adalah menambahkan
java -jar test.jar> / dev / null 2> & 1 &
ke /etc/rc.local (atau ganti / dev / null dengan file log favorit Anda).
Lebih baik membuat skrip init.d yang dimulai pada runlevel yang sesuai (misalnya, Anda mungkin tidak menginginkannya di runlevel 0, 1 atau 6). Dengan begitu, Anda juga dapat mengaktifkannya kembali secara otomatis jika mati dan memiliki antarmuka yang lebih baik untuk menghentikannya sementara.
Contoh-contoh kecil di http://www.howtoforge.com/forums/archive/index.php/t-3628.html
Penjelasan besar di http://developer.novell.com/wiki/index.php/Writing_Init_Scripts
& Operator akan memaksa proses untuk berjalan di latar belakang, Anda dapat menjalankan perintah 'atas' setelah itu untuk melihat bahwa itu sedang berjalan.
sumber
Anda dapat menjalankan tugas apa pun di latar belakang di Linux dengan menambahkan simbol '&' di akhir baris perintah, misalnya
sumber
Anda dapat menggunakan versi komunitas Java Service Wrapper yang tersedia dari sini:
http://wrapper.tanukisoftware.org/doc/english/download.jsp
Anda kemudian dapat memulainya saat reboot:
http://wrapper.tanukisoftware.org/doc/english/launch-nix-boot-debian.html
sumber
Masukan
&
di akhir:java -jar test.jar &
sumber