linux启动jar
nohup java -jar xxx.jar -Dspring.config.location=application.yml > /dev/null 2>&1 &
nohup
表示不挂断运行命令,当账户退出或终端关闭时,程序仍然运行;
-Dspring.config.location=application.yml
表示启动时读取指定路径文件
‘’>/dev/null 2>&1
首先表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,说白了就是不显示任何信息;接着,将标准错误输出重定向到标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件;
在命令最后加上&
符号,表示让这个进程到后台去执行,这样立刻返回到提示符状态,我们可以接着做下面的事。如:command &。
这种“后台”进程在shell一直打开的情况下是没有问题的,如果我们关了shell窗口甚至退出ssh登录或vnc登录,那么进程自动就结束了。所以如果想退出窗口乃至退出登录仍然保持程序运行,再加上nohup,形如:nohup command 1>output 2>&1 &
扩展
jar 包启动时指定配置文件 application.yml
nohup java -jar vPaas.jar --spring.config.location=/opt/vpaas-conf/application.yml > /opt/vpaas-conf/nohup.out 2>&1 &
如果不喜欢将 application.properties 作为配置文件名,你可以通过指定 spring.config.name 环境属性来切换其他的名称,也可以使
用 spring.config.location 环境属性引用一个明确的路径(目录位置或文件路;
将所有的调试信息输入到:/opt/vpaas-conf/nohup.out;