问题场景
问题一:后端项目jar包打包上传运行,终端上正常,终端退出后,项目未能运行。
问题二:第二次上传jar包并运行时提示该端口被占用。
解决方法
问题一:
使用nohub命令启动jar包。
nohup java -jar 1.0.0.jar &
问题二:
由于两次使用的同一个端口,先查找到当前端口正在运行的进程的进程号。
netstat -lnp|grep 端口号
然后用杀掉进程
kill -9 进程编号
不放心的话,杀死进程之前看一下进程详细信息。
ps 进程号
原因
问题一:
nohup命令:
nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。
如果不将 nohup 命令的输出重定向,输出将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。
nohup命令可以在你关闭终端之后继续该进程。nohup就是不挂断的意思( no hang up)。
通常格式为:nohup command &
该命令返回下列出口值:
126 可以查找但不能调用 Command 参数指定的命令。
127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。
否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。
以上引用来自nohub百度百科