Skip to content
项目
群组
代码片段
帮助
正在加载...
登录
切换导航
X
XXL-JOB
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
靳帅
XXL-JOB
Commits
b30fceb4
提交
b30fceb4
authored
4月 27, 2017
作者:
xueli.xue
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
脚本,输入输出
上级
a3bef921
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
18 行增加
和
8 行删除
+18
-8
jobinfo.index.ftl
...rc/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl
+5
-3
jobinfo.index.1.js
xxl-job-admin/src/main/webapp/static/js/jobinfo.index.1.js
+1
-1
ScriptJobHandler.java
.../java/com/xxl/job/core/handler/impl/ScriptJobHandler.java
+3
-2
ScriptUtil.java
...-core/src/main/java/com/xxl/job/core/util/ScriptUtil.java
+9
-2
没有找到文件。
xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl
浏览文件 @
b30fceb4
...
...
@@ -192,16 +192,18 @@ public class DemoGlueJobHandler extends IJobHandler {
</textarea>
<textarea
class=
"glueSource_shell"
style=
"display:none;"
>
#!/bin/bash
echo "xxl-job: hello shell"
for item in 1 2 3
echo "脚本位置:$0"
echo "参数数量:$#"
for param in $*
do
echo "
shell : $ite
m"
echo "
参数 : $para
m"
sleep 1s
done
echo "Good bye!"
exit 0
</textarea>
<textarea
class=
"glueSource_python"
style=
"display:none;"
>
#!/usr/bin/python
...
...
xxl-job-admin/src/main/webapp/static/js/jobinfo.index.1.js
浏览文件 @
b30fceb4
...
...
@@ -304,7 +304,7 @@ $(function() {
});
//
GLUE模式开启
//
运行模式
$
(
".glueType"
).
change
(
function
(){
// executorHandler
var
$executorHandler
=
$
(
this
).
parents
(
"form"
).
find
(
"input[name='executorHandler']"
);
...
...
xxl-job-core/src/main/java/com/xxl/job/core/handler/impl/ScriptJobHandler.java
浏览文件 @
b30fceb4
...
...
@@ -48,8 +48,9 @@ public class ScriptJobHandler extends IJobHandler {
String
logFileName
=
XxlJobFileAppender
.
filePath
.
concat
(
XxlJobFileAppender
.
contextHolder
.
get
());
// invoke
ScriptUtil
.
execToFile
(
cmd
,
scriptFileName
,
logFileName
);
return
ReturnT
.
SUCCESS
;
int
exitValue
=
ScriptUtil
.
execToFile
(
cmd
,
scriptFileName
,
logFileName
,
params
);
ReturnT
<
String
>
result
=
(
exitValue
==
0
)?
ReturnT
.
SUCCESS
:
new
ReturnT
<
String
>(
ReturnT
.
FAIL_CODE
,
"script exit value("
+
exitValue
+
") is failed"
);
return
result
;
}
}
xxl-job-core/src/main/java/com/xxl/job/core/util/ScriptUtil.java
浏览文件 @
b30fceb4
...
...
@@ -65,8 +65,11 @@ public class ScriptUtil {
* @param command
* @param scriptFile
* @param logFile
* @param params
* @return
* @throws IOException
*/
public
static
void
execToFile
(
String
command
,
String
scriptFile
,
String
logFile
)
throws
IOException
{
public
static
int
execToFile
(
String
command
,
String
scriptFile
,
String
logFile
,
String
...
params
)
throws
IOException
{
// 标准输出:print (null if watchdog timeout)
// 错误输出:logging + 异常 (still exists if watchdog timeout)
// 标准输入
...
...
@@ -76,12 +79,16 @@ public class ScriptUtil {
// command
CommandLine
commandline
=
new
CommandLine
(
command
);
commandline
.
addArgument
(
scriptFile
);
if
(
params
!=
null
&&
params
.
length
>
0
)
{
commandline
.
addArguments
(
params
);
}
// exec
DefaultExecutor
exec
=
new
DefaultExecutor
();
exec
.
setExitValues
(
null
);
exec
.
setStreamHandler
(
streamHandler
);
int
exitValue
=
exec
.
execute
(
commandline
);
int
exitValue
=
exec
.
execute
(
commandline
);
// exit code: 0=success, 1/-1=fail
return
exitValue
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论