2011-10-31 5 views
8

Javaで書かれたgitクライアントではいくつかの問題があります。私はgitサーバ上でsshを介して接続するためにjGitライブラリを使用しています。問題は、秘密鍵へのパスとそのパスフレーズを指定する方法がわかりません。どのような関数を呼び出す必要があるかについて、jGitのドキュメンテーションに例は見当たりませんでした。私が読んだことから、jGitライブラリはJSchを使ってサーバーに接続し、JSchは秘密鍵とパスフレーズをサポートしています。誰もこれに関する経験がありますか、またはいくつかの作業コードがありますか?jgitを使用するJava gitクライアント

は私が今までjGitを使用しませんでしたが、(オンライン一見ブラウズ可能ではありません、but can be downloaded)のJavadocを見てからあなたがSshSessionFactoryを設定する必要があります(つまりJSchConfigSessionFactoryのサブクラスを作成し、オーバーライドあなた

答えて

7

ありがとうございましたそのconfigureメソッド)。

JSchオブジェクトは、そのaddIdentityメソッドを持つ秘密鍵をサポートし、パスフレーズは、個々のJSCH SessionUserInfoオブジェクトを与えることができます。

(免責事項:JSCH Javadocが私によって書かれました。)

+0

あなたは天才です!魅力のように働いてくれてありがとう。 – azertys

+0

@azertysそれはあなたのためにどのように働いたいくつかのより多くの情報を共有できる場合に役立つだろう。私はまだこれを得るために苦労しています。 com.jcraft.jsch.JSchException:私はエラーを取得する認証はorg.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactoryでcom.jcraft.jsch.Session.connectで \t(Session.java:519) \tに失敗します。 java:117) – mohanjot

+0

私はそれが6年に近いと分かっていますが、これに関する助けは素晴らしいでしょう。 – mohanjot

関連する問題