2016-04-14 148 views
0

的Python/SpringXD不导致写在我以前的帖子错误的组合,springxd单独的外壳能不能成功我的系统上执行SpringXD无法执行shell命令

流定义:

trigger --cron='0 */1 * * * *' | shell --command='ls' | log 

这里是错误消息:

2016-04-19T16:06:06-0400 1.3.1.SNAP ERROR inbound.awef-p2_7-log.0-redis:queue-inbound-channel-adapter1 redis.RedisMessageBus$1 - Failed to deliver message; retries exhausted; message sent to queue 'ERRORS:awef-p2_7-log.0' org.springframework.messaging.MessageHandlingException: nested exception is java.lang.RuntimeException: Stream closed 
2016-04-19T16:06:17-0400 1.3.1.SNAP ERROR inbound.test-ls.0-redis:queue-inbound-channel-adapter1 process.ShellCommandProcessor - Stream closed 
java.io.IOException: Stream closed 
     at java.lang.ProcessBuilder$NullOutputStream.write(ProcessBuilder.java:433) ~[na:1.8.0_66] 
     at java.io.OutputStream.write(OutputStream.java:116) ~[na:1.8.0_66] 
     at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) ~[na:1.8.0_66] 
     at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) ~[na:1.8.0_66] 
     at org.springframework.xd.extension.process.ShellCommandProcessor.send(ShellCommandProcessor.java:156) [spring-xd-extension-process-1.3.1.BUILD-SNAPSHOT.jar!/:na] 
     at org.springframework.xd.extension.process.ShellCommandProcessor.sendAndReceive(ShellCommandProcessor.java:171) [spring-xd-extension-process-1.3.1.BUILD-SNAPSHOT.jar!/:na] 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_66] 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_66] 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_66] 
     at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_66] 

回答

0

我终于twick呼叫通过常规脚本的Python:

流高清:

trigger --cron='0 0/1 * * * *' | script --script=file:/.../testjobpython.groovy | null 

代码常规:

String[] pythonCmd = ["/usr/bin/python2.7","/.../testjobpython.py"] 
Runtime.getRuntime().exec(pythonCmd) 
0

我怀疑这可能是因为你的Python代码sys.exit()通话。当你不打电话sys.exit()会发生什么?

+0

您好,我删除了,但仍然有相同的错误。谢谢 – MattEnergy