Merge pull request #289 from valinz/script-job-close-logfile

Close log file after script executed
master
许雪里 7 years ago committed by GitHub
commit 548b367c78
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 29
      xxl-job-core/src/main/java/com/xxl/job/core/util/ScriptUtil.java

@ -59,22 +59,23 @@ public class ScriptUtil {
// 标准输出:print (null if watchdog timeout) // 标准输出:print (null if watchdog timeout)
// 错误输出:logging + 异常 (still exists if watchdog timeout) // 错误输出:logging + 异常 (still exists if watchdog timeout)
// 标准输入 // 标准输入
FileOutputStream fileOutputStream = new FileOutputStream(logFile, true); try (FileOutputStream fileOutputStream = new FileOutputStream(logFile, true)) {
PumpStreamHandler streamHandler = new PumpStreamHandler(fileOutputStream, fileOutputStream, null); PumpStreamHandler streamHandler = new PumpStreamHandler(fileOutputStream, fileOutputStream, null);
// command // command
CommandLine commandline = new CommandLine(command); CommandLine commandline = new CommandLine(command);
commandline.addArgument(scriptFile); commandline.addArgument(scriptFile);
if (params!=null && params.length>0) { if (params!=null && params.length>0) {
commandline.addArguments(params); commandline.addArguments(params);
} }
// exec // exec
DefaultExecutor exec = new DefaultExecutor(); DefaultExecutor exec = new DefaultExecutor();
exec.setExitValues(null); exec.setExitValues(null);
exec.setStreamHandler(streamHandler); exec.setStreamHandler(streamHandler);
int exitValue = exec.execute(commandline); // exit code: 0=success, 1=error int exitValue = exec.execute(commandline); // exit code: 0=success, 1=error
return exitValue; return exitValue;
}
} }
} }

Loading…
Cancel
Save