gpt4 book ai didi

java - Python脚本使用子进程运行java程序时出现java错误后需要继续

转载 作者:行者123 更新时间:2023-12-01 09:16:08 31 4
gpt4 key购买 nike

在 python2.7 脚本中,我使用 subprocess.call 来运行如下 java 程序:

java_command = "java -jar /path/to/java_program.jar %s %s >> %s" % (infile, outfile, logfile)
subprocess.call(java_command, shell=True)
...
#Do other stuff unrelated to this output

大多数时候,这工作正常,但在某些情况下,java 程序会出错:

Exception in thread "main" java.lang.NullPointerException
at MyProgram.MainWindow.setProcessing(MainWindow.java:288)

问题是我的 python 脚本在 subprocess.call() 行上停止,无法执行“其他操作”。

有没有办法可以编辑我正在使用的 java_command 或使用 subprocess 的方式来继续 python 脚本,即使java 程序挂起?

请注意,我无法修改java程序的代码。

最佳答案

我想你想要 check_call来自同一包的方法:

try:
status = subprocess.check_call(java_command, shell=True)
except CalledProcessError as e:
# The exception object contains the return code and
# other failure information.
... react to the failure and recover

关于java - Python脚本使用子进程运行java程序时出现java错误后需要继续,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40534745/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com