无法运行程序" docker" error = 2,没有这样的文件或目录

时间:2017-08-22 13:17:08

标签: java eclipse docker ant

所以我试图在MacOS Sierra(V 10.12.5)的eclipse环境中运行一个ant build,它将构建一个docker镜像,获取图像部分并将图像推送到一个神器回购。

当我去运行构建映像目标时,构建失败并显示以下错误:

java.io.IOException: Cannot run program "docker" (in directory my/working/directory) error=2, No such file or directory

在网上浏览了过去一小时左右,似乎它可能是一个版本问题,但我有最新版本的docker和eclipse以及Java SE 8 [1.8.0_144]。

我已经进入了一个据称不存在的目录(确实存在)并尝试运行一些docker命令并且它们都运行良好,守护程序正在运行,并且最终似乎没有问题。

这不是我的ant构建的所有代码,但这是它失败的部分的开头:

    <exec executable="docker" dir="docker" failonerror="true">
        <arg value="build" />
        <arg line="--build-arg label=${label}" />

对于该做什么,有什么问题的建议将不胜感激。

2 个答案:

答案 0 :(得分:0)

使用以下内容在environment.plist中创建~/Library/LaunchAgents/文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>my.startup</string>
  <key>ProgramArguments</key>
  <array>
    <string>sh</string>
    <string>-c</string>
    <string>launchctl setenv PATH $PATH:/usr/local/bin</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
</dict>
</plist>

然后激活文件使用命令:

launchctl load ~/Library/LaunchAgents/environment.plist launchctl start ~/Library/LaunchAgents/environment.plist

答案 1 :(得分:0)

怀疑问题是由于在打开eclipse.app

时没有设置环境路径

此处的解决方案可在此处找到 - Launch mac eclipse with environment variables set