2011-06-24 38 views
6

Tôi đã phát triển một ứng dụng bảng điều khiển Java khi bắt đầu, mở cửa sổ bảng điều khiển và giữ nguyên nền trước, tôi muốn khởi động ứng dụng đó ở chế độ nền.Chạy ứng dụng Java console làm daemon (nền)

Bây giờ tôi khởi động ứng dụng bằng dòng lệnh này:

java -jar myapp.jar 

Có cách nào để đạt được hành vi này? Đủ thay đổi tham số dòng lệnh hoặc tôi cần thực hiện một số thay đổi trên mã của mình?

+0

câu hỏi của bạn không rõ ràng. Bạn có muốn chạy dưới dạng dịch vụ Windows không? Hay bạn muốn có một cửa sổ console? hoặc cả hai? –

+1

Trong hệ điều hành nào bạn muốn đạt được điều này? – Marcelo

+0

Tôi đang sử dụng Windows và dịch vụ cửa sổ có thể là một giải pháp tuyệt vời. Có cách nào để chạy một ứng dụng Java console dưới dạng Windows ServicE không? – aleroot

Trả lời

12

Câu trả lời phụ thuộc vào hệ điều hành.

*nix: <your command> & 
Windows: (opens a new console): start <your command> 
Windows: (doesn't open a new console): start /b <your command> 
6

Nếu bạn đang làm điều này trong bất kỳ thứ gì unix thì bạn có thể gắn thêm & vào cuối sẽ sinh ra một chuỗi mới và tiến hành nó chạy ẩn.

java -jar myapp.jar & 
4

Nếu bạn thực sự chỉ muốn chạy ở chế độ nền, java -jar myapp.jar & sẽ thực hiện công việc. Bằng cách đó, nó vẫn sẽ chết khi vỏ đóng, nhưng bạn có thể tiếp tục sử dụng vỏ của bạn.

Nếu bạn thực sự muốn nó chạy dưới dạng daemon, nohup java -jar myapp.jar & sẽ thực hiện công việc. Bằng cách đó, nó sẽ tiếp tục sống khi vỏ đóng lại.

Nếu bạn muốn điều này đáng tin cậy, bạn có thể chuẩn bị tập lệnh init hoặc upstart job definition hoặc chạy mã thông qua thông số Vixie cron(8)@reboot để bắt đầu khởi động.

+0

Chỉ muốn nói rằng điều này sẽ là cho một máy Unix hoặc Linux và không cho các cửa sổ. – Kalyan

3

Do bạn đang sử dụng Windows, bạn có thể xem xét Java Service Wrapper. Tôi đã sử dụng nó trên một dự án trong quá khứ.

+3

Ngoài ra, bạn có thể thực hiện "javaw" thay vì "java" để chạy chương trình của bạn mà không cần cửa sổ bảng điều khiển. Điều này thường là làm thế nào một chương trình java dựa trên GUI nên được chạy. http://download.oracle.com/javase/6/docs/technotes/tools/windows/java.html – Jim

Các vấn đề liên quan