0
我需要运行一个jar文件,我没有权限通过python脚本进行修改。为什么python脚本在通过cron作业执行之前从java获得结果之前完成?
如果我运行python脚本手动将其工作正常,但如果我通过一个cron作业运行它,它结束而不执行jar文件 我用下面的Python代码运行java的jar:
os.system('java -jar jar_file.jar > output.txt')
我也试过:
os.system('/usr/local/jdk/bin/java -jar jar_file.jar > output.txt')
之后,我需要使用相同的python脚本来读取output.txt
文件中的数据。
在crontab我有任务设置为:
*/30 * * * * (cd /path/to/python/script && exec /usr/bin/python script.py)
如果我手动运行该脚本,我得到的输出文件中的数据,但如果我通过cron作业运行该脚本,我得到一个空output.txt
文件。
有什么建议吗?
克朗职位有不同的环境。一些PATH等可能会丢失。只是猜测,但这应该是首先检查。 – VPfB
cronjob可能会以不同用户的身份运行。顺便说一句:即使对'.jar'文件使用完整路径。 – furas
@ VPfB它确实与环境变量有关。我得到了修正,然后来到这里发布答案。如果你的评论是一个答案,我会选择它是正确的答案。如果你愿意,随意发布它作为答案。 – XO39