【问题标题】:Jenkins Cannot run program "python" CreateProcess error=2, The system cannot find the file specifiedJenkins 无法运行程序“python” CreateProcess 错误=2,系统找不到指定的文件
【发布时间】:2016-12-21 20:16:59
【问题描述】:

当我使用 Jenkins 在 python 脚本下运行时,它会抛出错误。

Jenkins Cannot run program "python" CreateProcess error=2, The system cannot find the file specified

以下是我的代码,当我直接执行时它可以工作。

import _mssql,os,datetime
if (os.getenv('ColumnName').isspace() or not os.getenv('ColumnName')):
    print("White space Entered")
else:
    print(var)

我正在运行 Python 3.5。

谢谢。

尝试了 python -v 并得到同样的错误

The system cannot find the file specified
FATAL: command execution failed
java.io.IOException: Cannot run program "python" (in directory "D:\test\"): CreateProcess error=2, The system cannot find the file specified
    at java.lang.ProcessBuilder.start(Unknown Source)
    at hudson.Proc$LocalProc.<init>(Proc.java:245)
    at hudson.Proc$LocalProc.<init>(Proc.java:214)
    at hudson.Launcher$LocalLauncher.launch(Launcher.java:846)
    at hudson.Launcher$ProcStarter.start(Launcher.java:384)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:108)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:65)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779)
    at hudson.model.Build$BuildExecution.build(Build.java:205)
    at hudson.model.Build$BuildExecution.doRun(Build.java:162)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
    at hudson.model.Run.execute(Run.java:1729)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:98)
    at hudson.model.Executor.run(Executor.java:404)
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
    at java.lang.ProcessImpl.create(Native Method)
    at java.lang.ProcessImpl.<init>(Unknown Source)
    at java.lang.ProcessImpl.start(Unknown Source)
    ... 16 more
Build step 'Execute Python script' marked build as failure
Finished: FAILURE

【问题讨论】:

  • 在您的 jenkins 作业中,不要执行上述脚本,而是执行此命令 - “python -V”。如果成功执行,则执行此脚本为 - python "
  • 您的代码无关紧要。找不到 python 可执行文件,因为它不在 PATH 中。尝试从詹金斯呼应路径。
  • 遇到同样的错误。
  • jenkin 作业在哪台机器上执行? Windows 还是 Linux?
  • 我在 windows 机器上运行并确认路径已添加到环境变量中。

标签: python jenkins


【解决方案1】:

以上错误与你的python代码无关。

将以下内容添加到您的 Jenkins 工作中:

set PATH=<Python Installation Path>;%PATH%
python <Complete path to your script>

【讨论】:

  • 问题不在于我的脚本或环境变量。我认为 Jenkins 插件在 Python 3.5 版本上存在问题。我尝试从 Jenkins 运行与 Windows 批处理文件相同的命令并且它有效。 (python d:\test.py)
  • 我想在我的 Jenkins 控制台下编写脚本并运行它们,不知道该怎么做。
猜你喜欢
  • 1970-01-01
  • 2018-06-05
  • 2011-11-09
  • 1970-01-01
  • 2016-07-26
  • 1970-01-01
  • 2015-02-01
  • 1970-01-01
  • 2013-02-01
相关资源
最近更新 更多