Run a java program in backend

2020-06-17 04:51发布

Hi all i want to run a java application as backend process.that is like tomcat server.For that i had developed one application.and made one class as main class and calling from one script file .i.e(startup.sh) file.in startup.sh file i was calling one class.that is MainMethodClass.In main method class i had written my business logic.when i am running this app in linux server from using putty is is working until putty window is not closed.As closed after putty window it is also stopped.but i need to run this app even i closed also.How can i achieve this.

4条回答
一纸荒年 Trace。
2楼-- · 2020-06-17 05:23

You should be able to do something like:

nohup java -jar MyApplication.jar &
查看更多
再贱就再见
3楼-- · 2020-06-17 05:38

Nohup will detach a process you run from your current console and let it continue when you close the terminal. Run something like this.

nohup java -jar my.jar &

By default it will pipe the output to nohup.out, so if you don't want that you could try:

nohup java -jar my.jar > /dev/null &
查看更多
孤傲高冷的网名
4楼-- · 2020-06-17 05:42

On a linux machine you can create a service for your jar( executable jar like spring boot )

# Set the Application as Service
ln -s $APP_BASE/bin/$APP_NAME.jar /etc/init.d/$APP_NAME

echo "Starting the application as service"
service $APP_NAME start 
查看更多
乱世女痞
5楼-- · 2020-06-17 05:43

This problem is not related to java, its actually something related to the way linux operates.

You need to do following:

nohup <your_application_command> &

Note the "nohup" and "&" at start and end respectively.

查看更多
登录 后发表回答