在OSX上的Mac中使用git-credential-manager时出现Java错误?

时间:2017-10-16 12:33:47

标签: git macos

我已根据以下说明在Mac OSX上安装并配置了git-credential-manager:

https://github.com/Microsoft/Git-Credential-Manager-for-Mac-and-Linux/blob/master/Install.md

brew安装抱怨Java需求丢失,并提出了安装Java的命令,我做了。

完成所有操作后,我现在在尝试从私有存储库执行git克隆时出现以下错误:

Cloning into 'Weather'...
Fatal: java.lang.IllegalArgumentException encountered.  Details:
Unrecognized version string '9+181'.
fatal: credential helper '!/Library/Java/JavaVirtualMachines/jdk-
9.jdk/Contents/Home/bin/java -Ddebug=false -Djava.net.useSystemProxies=true 
-jar /usr/local/Cellar/git-credential-manager/2.0.3/libexec/git-credential-
manager-2.0.3.jar' told us to quit

有谁知道如何解决?

2 个答案:

答案 0 :(得分:13)

十月2017:跟踪Microsoft/Git-Credential-Manager-for-Mac-and-Linux issues/69

  

我转储了Java 9并安装了Java 8,一切正常。

brew cask remove java    

重新安装git-credential-manager

git-credential-manager install
  

我偶然发现@JoeyHerrington和安装JDK8的问题:

brew cask install caskroom/versions/java8

更新于2018年9月same issue now includes

  

版本2.0.4的Git Credential Manager现在支持Java 9+   该更新可在GitHub上获得,并将很快在Homebrew上提供。

所以OP(一年后)不再是问题了。

Thomas Hagström添加in the comments

  

我想说删除文件夹是最安全的。

sudo rm -rf "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin" 
sudo rm -rf "/Library/PreferencePanes/JavaControlPanel.prefPane" 
sudo rm -rf "~/Library/Application Support/Oracle" 
sudo rm -rf "~/Library/Java"
     

然后重新安装git凭证管理器,以便它选择正确的Java版本/虚拟机。

答案 1 :(得分:0)

在使用git时插入IntelliJ请求的一些错误凭证后,我遇到了同样的问题。我通过更改helper中的~/.gitconfig来解决它(如@Migg所说的:)。我的gitconfig指向Java 8,以及我如何在计算机(Java 8)中安装and Java 11 OSX 10.14。我只是指出了最新版本。

之前

[user]
    email = <email>
    name = <name>
[core]
    autocrlf = input
[credential]
    helper = !/Library/Java/JavaVirtualMachines/<java-1.8>/Contents/Home/jre/bin/java -Ddebug=false -Djava.net.useSystemProxies=true -jar /usr/local/Cellar/git-credential-manager/2.0.4/libexec/git-credential-manager-2.0.4.jar

之后

credential]
        helper = !/Library/Java/JavaVirtualMachines/jdk-11.0.3.jdk/Contents/Home/jre/bin/java -Ddebug=false -Djava.net.useSystemProxies=true -jar /usr/local/Cellar/git-credential-manager/2.0.4/libexec/git-credential-manager-2.0.4.jar