前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >maven:release:prepare报错Cannot run program "bash"

maven:release:prepare报错Cannot run program "bash"

作者头像
10km
发布2018-01-03 12:09:32
1.7K0
发布2018-01-03 12:09:32
举报
文章被收录于专栏:10km的专栏10km的专栏10km的专栏

今天执行mvn release:prepare做版本发布的时候报了一个莫名其妙的错误:

[ERROR] Caught exception in FS.readPipe()
java.io.IOException: Cannot run program "bash" (in directory "C:\Users\10km"): CreateProcess error=2, ?????????
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1041)
        at java.lang.Runtime.exec(Runtime.java:617)
        at org.eclipse.jgit.util.FS.readPipe(FS.java:431)
        at org.eclipse.jgit.util.FS_Win32.discoverGitPrefix(FS_Win32.java:113)
        at org.eclipse.jgit.util.FS.gitPrefix(FS.java:517)

google一下,瞬间明白了原因: 其实不google也应该能看明白错误信息,就是没有找到git shell的bash脚本解释器。 我是在windows下开发的,安装了git。 安装过git就应该了解windows git 有两种运行方式一种是cmd命令行执行,这种情况需要将git添加到cmd环境变量中,这种方案需要修改环境变量,但可以在直接在命令行运行git命令。 另一种方式就是在git自带的MSYS shell中运行,这种方案不需要修改环境变量,但git命令不能在cmd中运行。

这里写图片描述
这里写图片描述

我不想在环境变量中加太多东西,所以我选择了第二种方案,所以maven在运行Git命令的时候,找不到C:\Program Files\Git\usr\bin\bash.exe(没有被添加到%PATH%环境变量),所以抛出了异常。 怎么办呢?不能让我再把git重装一次吧? 其实知道原因了,解决的办法也很简单: 在git shell中运行maven。 如下图:

这里写图片描述
这里写图片描述
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年12月15日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档