gpt4 book ai didi

git - 在 Windows 7 上使用 GIT BASH 的 Groovy Bootstrap 错误

转载 作者:太空狗 更新时间:2023-10-29 13:56:26 25 4
gpt4 key购买 nike

我正在调用一个 git hook 来预提交。这会触发对 groovy 脚本的调用,并以允许远程调试 Hook 执行的方式进行。像这样:

#!/usr/bin/env groovy
groovy -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,address=8085,suspend=y "C:\Users\.......hooks\PreCommit.groovy"

当我使用 GIT BASH 触发 Hook 时,我看到以下错误:

/c/Program Files (x86)/Groovy/Groovy-2.1.0/bin/startGroovy: line 96: [: too many arguments org.codehaus......: startup failed: .... expected EOF, found ':' @ line 3 column 35]

当我快速查看 startGroovy 文件时,我看到以下不清楚的代码 - 第 96 行是 GROOVY home 的 if 条件:

# For Cygwin, ensure paths are in UNIX format before anything is touched.
if $cygwin ; then
[ -n "$GROOVY_HOME" ] && GROOVY_HOME=`cygpath --unix "$GROOVY_HOME"`
[ -n "$JAVACMD" ] && JAVACMD=`cygpath --unix "$JAVACMD"`
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
[ -n "$CP" ] && CP=`cygpath --path --unix "$CP"`
else
if [ -n "$GROOVY_HOME" -a `expr "$GROOVY_HOME":'\/$'` ] ; then
GROOVY_HOME=`echo $GROOVY_HOME | sed -e 's/\/$//'`
fi
fi

这是常规 Bootstrap 中的错误吗?我的 Windows 7 环境变量 GROOVY_HOME 正确指向:C:\program file (x86)\Groovy\Groovy-2.1.0

最佳答案

问题出在 Groovy 的脚本中。该脚本没有在所有正确的地方正确引用环境变量 GROOVY_HOME。 GROOVY_HOME 表示的路径中的空格,在我的例子中“Program Files (x86)”有 2 个空格,被解释为分隔符并导致路径被解析为多于 1 个参数。要修复它,请更改 Windows 环境变量 GROOVY_HOME 的定义以使用波浪号版本的路径。编辑环境变量 GROOVY_HOME(在 Vista 上,开始/右键单击计算机/属性/高级系统设置/环境变量/用户或系统,我的是系统)并设置为 c:/Progra~2/Groovy/Groovy-2.1。 3.当您启动 Git、MinGW 或 CygWin shell 时,您不会有空格,也不应该出现任何错误。

关于git - 在 Windows 7 上使用 GIT BASH 的 Groovy Bootstrap 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14966631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com