思路参考
https://www.cnblogs.com/ysk123/p/9909235.html
https://segmentfault.com/q/1010000022550896
解决方法:
在nodejs环境下,通过pm2来执行,写一个简单的node的exec。
var exec = require('child_process').exec;
var log4jsConfig = config.log4jsConfig;
log4js.configure(log4jsConfig);
var logger = log4js.getLogger('DEPLOY');
logger.warn('部署服务启动成功,进程id是: ', process.pid);
exec_main();
function exec_main(){
var filePath="~\\target\\debug";
var cmd="cd "+filePath+" && ./demoservere";
logger.info(cmd);
exec(cmd, function (error, stdout, stderr) {
if (error || stderr) {
logger.error('启动新app: 出错: '+cmd);
logger.error(error || stderr);
} else {
logger.info('启动新的app 成功 '+cmd);
}
})
};
//出错记录日志
process.on('uncaughtException', function (err) {
logger.error('部署项目服务出错: ' + err);
});