我想从 IntelliJ IDEA 执行 git pre-push hook。 Git pre-push hook 可以通过终端执行,但不能从 IntelliJ IDEA 执行。
我已经发布了版本控制控制台:
并且它说 JAVA_HOME
未设置。
使用的版本
Java : 1.8.0_211
IntelliJ IDEA : IntelliJ IDEA 2019.2 EAP (Ultimate Edition), Build #IU-192.4787.16
Ubuntu : 18.04
Git : 2.17.1
Git 预推送 Hook 脚本
source ~/.bash_profile
remote="$1"
url="$2"
echo “Running Tests”
pwd
./gradlew test
exit $?
我不知道问题到底出在哪里以及如何解决这个问题?
最佳答案
问题是钩子(Hook)运行的环境中没有定义 JAVA_HOME 变量。该环境是从父进程继承的,因此根据 IntelliJ 的启动方式和时间,它的环境
解决该问题的最简单方法是在钩子(Hook)本身(或者可能在 .bash_profile 中)中定义 JAVA_HOME,例如通过添加export JAVA_HOME=<PATH to your Java Home>
在里面。这样变量将在钩子(Hook)执行期间设置,并且 gradlew 不会失败。
关于java - Intellij Idea 无法执行 git pre-push hook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56660929/