diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java index 16e8412..c9d3a5e 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java @@ -89,6 +89,11 @@ return new ReturnT(500, "请输入“JobHandler”"); } + // fix "\r" in shell + if (GlueTypeEnum.GLUE_SHELL==GlueTypeEnum.match(jobInfo.getGlueType()) && jobInfo.getGlueSource()!=null) { + jobInfo.setGlueSource(jobInfo.getGlueSource().replaceAll("\r", "")); + } + // childJobKey valid if (StringUtils.isNotBlank(jobInfo.getChildJobKey())) { String[] childJobKeys = jobInfo.getChildJobKey().split(","); diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java index 16e8412..c9d3a5e 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java @@ -89,6 +89,11 @@ return new ReturnT(500, "请输入“JobHandler”"); } + // fix "\r" in shell + if (GlueTypeEnum.GLUE_SHELL==GlueTypeEnum.match(jobInfo.getGlueType()) && jobInfo.getGlueSource()!=null) { + jobInfo.setGlueSource(jobInfo.getGlueSource().replaceAll("\r", "")); + } + // childJobKey valid if (StringUtils.isNotBlank(jobInfo.getChildJobKey())) { String[] childJobKeys = jobInfo.getChildJobKey().split(","); diff --git a/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl b/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl index 38614b8..c85bbcc 100644 --- a/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl +++ b/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl @@ -208,19 +208,21 @@ diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java index 16e8412..c9d3a5e 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java @@ -89,6 +89,11 @@ return new ReturnT(500, "请输入“JobHandler”"); } + // fix "\r" in shell + if (GlueTypeEnum.GLUE_SHELL==GlueTypeEnum.match(jobInfo.getGlueType()) && jobInfo.getGlueSource()!=null) { + jobInfo.setGlueSource(jobInfo.getGlueSource().replaceAll("\r", "")); + } + // childJobKey valid if (StringUtils.isNotBlank(jobInfo.getChildJobKey())) { String[] childJobKeys = jobInfo.getChildJobKey().split(","); diff --git a/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl b/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl index 38614b8..c85bbcc 100644 --- a/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl +++ b/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl @@ -208,19 +208,21 @@ diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java b/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java index f27aaa8..b0cfb97 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java @@ -88,7 +88,7 @@ } } catch (Exception e) { if (toStop) { - logger.error("----------- xxl-job toStop, stopReason:{}", stopReason); + logger.error("
----------- xxl-job toStop, stopReason:{}", stopReason); } logger.error("JobThread Exception:", e); StringWriter out = new StringWriter(); @@ -111,7 +111,7 @@ } } catch (Exception e) { if (toStop) { - logger.error("----------- xxl-job toStop, stopReason:{}", stopReason); + logger.error("
----------- xxl-job toStop, stopReason:{}", stopReason); } logger.error("----------- xxl-job JobThread Exception:", e); } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java index 16e8412..c9d3a5e 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java @@ -89,6 +89,11 @@ return new ReturnT(500, "请输入“JobHandler”"); } + // fix "\r" in shell + if (GlueTypeEnum.GLUE_SHELL==GlueTypeEnum.match(jobInfo.getGlueType()) && jobInfo.getGlueSource()!=null) { + jobInfo.setGlueSource(jobInfo.getGlueSource().replaceAll("\r", "")); + } + // childJobKey valid if (StringUtils.isNotBlank(jobInfo.getChildJobKey())) { String[] childJobKeys = jobInfo.getChildJobKey().split(","); diff --git a/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl b/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl index 38614b8..c85bbcc 100644 --- a/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl +++ b/xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl @@ -208,19 +208,21 @@ diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java b/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java index f27aaa8..b0cfb97 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java @@ -88,7 +88,7 @@ } } catch (Exception e) { if (toStop) { - logger.error("----------- xxl-job toStop, stopReason:{}", stopReason); + logger.error("
----------- xxl-job toStop, stopReason:{}", stopReason); } logger.error("JobThread Exception:", e); StringWriter out = new StringWriter(); @@ -111,7 +111,7 @@ } } catch (Exception e) { if (toStop) { - logger.error("----------- xxl-job toStop, stopReason:{}", stopReason); + logger.error("
----------- xxl-job toStop, stopReason:{}", stopReason); } logger.error("----------- xxl-job JobThread Exception:", e); } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/util/ScriptUtil.java b/xxl-job-core/src/main/java/com/xxl/job/core/util/ScriptUtil.java index e5a8b05..04fad6e 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/util/ScriptUtil.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/util/ScriptUtil.java @@ -87,7 +87,7 @@ DefaultExecutor exec = new DefaultExecutor(); exec.setExitValues(null); exec.setStreamHandler(streamHandler); - int exitValue = exec.execute(commandline); // exit code: 0=success, 1/-1=fail + int exitValue = exec.execute(commandline); // exit code: 0=success, 1=error return exitValue; }