studio 相关问题

看不出什么信息啊 没有报错信息

所以到底是 启动的时候就有瑕疵 还是 启动了但是遇到问题所以崩掉了呢? node 和 npm 里对启动方式有讲究吗?

你用脚本启动后 lsof -i :8080 有进程吗 那个进程服务是http-gateway吗

是不是权限不一样?用java执行shell命令的脚本和自己敲命令执行脚本的用户身份不一样,默认rpm启动方式是以root权限来执行的

刚启动

崩掉以后

调用脚本时候可以指定用户的,用的就是root。而且加了sudo 试过了也不行

可以记录一下8080端口服务的pid,去/var/log/message里看下killed process关键词。

另外,java runtime处理shell和直接执行还是有差异的。shell里某些命令可能导致java进程退出。
Runtime.exec()的command参数也不完全等同于命令行,从你的情况来看更像是访问了一次服务后进程执行完毕被退出。在这里我的建议是如果一定要通过java来管理服务,可以看下原有的启动脚本,再通过java来实现相同的功能出来。
Java我不是很擅长,在这里只是提供一个思路。

1 个赞

对的,应该是和进程调用有关系,启动进程调完脚本就结束了,但是 gateway在前台访问以后会有输出,但是父进程应该已经没有了,然后就崩了。用java也是一个道理。改了把 gateway输出到 /dev/null以后,就没有问题了。目前理解是这样子。