2012-03-16 112 views
1

我想用ssh克隆一個存儲庫。從命令行它工作正常,但是當我在Eclipse中使用Egit它不起作用。我收到以下錯誤信息:Egit(Eclipse)可以看到存儲庫,但不會克隆它

Git repository clone failed. 
ssh://[email protected]: Password: 

錯誤日誌只顯示:

org.eclipse.jgit.errors.UnsupportedCredentialItem: ssh://[email protected]:22: Password: 
    at org.eclipse.jgit.transport.UsernamePasswordCredentialsProvider.get(UsernamePasswordCredentialsProvider.java:110) 
    at org.eclipse.jgit.transport.CredentialsProvider.get(CredentialsProvider.java:135) 
    at org.eclipse.jgit.transport.CredentialsProviderUserInfo.promptKeyboardInteractive(CredentialsProviderUserInfo.java:142) 
    at com.jcraft.jsch.UserAuthKeyboardInteractive.start(UserAuthKeyboardInteractive.java:135) 
    at com.jcraft.jsch.Session.connect(Session.java:425) 
    at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:116) 
    at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:121) 
    at org.eclipse.jgit.transport.TransportGitSsh$SshFetchConnection.<init>(TransportGitSsh.java:248) 
    at org.eclipse.jgit.transport.TransportGitSsh.openFetch(TransportGitSsh.java:147) 
    at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:127) 
    at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:113) 
    at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1062) 
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:129) 
    at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:175) 
    at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:121) 
    at org.eclipse.egit.core.op.CloneOperation.run(CloneOperation.java:153) 
    at org.eclipse.egit.ui.internal.clone.AbstractGitCloneWizard.executeCloneOperation(AbstractGitCloneWizard.java:430) 
    at org.eclipse.egit.ui.internal.clone.AbstractGitCloneWizard.access$2(AbstractGitCloneWizard.java:424) 
    at org.eclipse.egit.ui.internal.clone.AbstractGitCloneWizard$5.run(AbstractGitCloneWizard.java:386) 
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121) 

根據this thread這似乎是因爲我使用JDK7。不幸的是,我沒有選擇不這樣做。看來我不是唯一有這個問題的人 - 另一個線程here提到它。

Git可以在命令行上正常工作,所以我可以克隆存儲庫,然後在本地導入項目,但不得不始終在CL和IDE之間切換。

+0

什麼是遇到了異常? – 2012-03-16 19:36:54

+0

我在哪裏可以找出異常? – 2012-03-29 15:09:37

回答

0

如「Eclipse - no Java (JRE)/(JDK) … no virtual machine」中所述,您可以選擇使用JDK6來啓動Eclipse。
這並不妨礙您在「已安裝的JRE」部分引用JDK7,以便您的程序能夠編譯/運行。

如果您仍想通過運行JDK7的Eclipse訪問Git倉庫,那麼您必須在JDK7密鑰倉庫中添加缺少的證書,如described here (ofr https access)here (for ssh access)

但對於SSH的問題,這可能與bug 360862

error

+0

你是對的,我似乎是這個bug的受害者......我想我會給https嘗試一下。 – 2012-03-29 15:09:02