Intellij导入问题 - java.io.IOException:无法运行程序“git”:error = 2,没有这样的文件或目录

时间:2015-09-22 20:11:28

标签: git intellij-idea gradle

我正在尝试将项目从github导入intellij并且正在运行此堆栈跟踪:

引起:

  

java.io.IOException:无法运行程序“git”:error = 2,没有这样的文件   或目录在   common_c6b3s0xd8gl4x9r47zsnga1nq $ _run_closure12.doCall(/Users/jrengh/Documents/teri/common.gradle:97)

我已经看到这个问题在互联网上发布很多,常见的解决方案似乎是确保git可执行文件正确地列在设置>下的“路径到git可执行文件”字段中。版本控制> Git的。我已经这样做了,测试了连接并得到了一个成功的消息。

问题源于此任务方法在位于我的项目依赖项之一的单独gradle文件中调用:

common.gradle

task buildInfo {
    def cmd = "git rev-parse --short HEAD"
    def proc = cmd.execute()
    project.ext.revision = proc.text.trim()
    cmd = "git show -s --format=%ct HEAD"
    proc = cmd.execute()
    project.ext.timestamp = proc.text.trim()
}

基本上,即使我已经成功上传了一个git可执行文件,intellij也不会识别我尝试在上面执行的命令中的“git”。有没有人有任何有用的建议?

2 个答案:

答案 0 :(得分:7)

我刚刚安装了一个新的Ubuntu Gnome 15.10并没有安装Git。

在Ubuntu上安装Git:

sudo apt-get install git

Intellij Idea当然不能执行它找不到的命令。

答案 1 :(得分:1)

事实证明,如果我使用了完整的目录位置(' / usr / local / git / bin / git'在我的情况下),而不仅仅是' git'在那些命令执行中,问题就解决了。因此,例如,方法的第一行必须读取" def proc = / usr / local / git / bin / git rev-parse --short HEAD"。

如果我试图在团队设置中编辑此代码(例如将其推回到github以供我团队的其他成员查看),那么我需要为此目录位置设置别名以便" git& #34;可以保留在代码中,仍可在我的机器上运行;但是因为我不打算将其推回到github,所以这就是我所需要的。