思路參考
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);
});