8

Javaで記述されたgitクライアントで問題が発生しています。jGitライブラリを使用してgitサーバーのssh経由で接続しています。問題は、秘密鍵へのパスとそのパスフレーズを指定する方法がわからないことです。jGitのドキュメントには、呼び出す必要のある関数に関する例が見つかりませんでした。私が読んだところによると、jGitライブラリはJSchを使用してsshを使用してサーバーに接続しており、JSchは秘密鍵とパスフレーズをサポートしています。誰かがこれについて何か経験がありますか、またはいくつかの実用的なコードを持っていますか?

ありがとうございました

4

1 に答える 1

7

私はjGitを使用したことはありませんが、Javadoc(オンラインで閲覧できないように見えますが、ダウンロードできます)を見ると、SshSessionFactoryを構成する必要があります(つまり、JSchConfigSessionFactoryのサブクラスを作成し、そのconfigureメソッドをオーバーライドします)。

JSchオブジェクトは、そのaddIdentityメソッドで秘密鍵をサポートし、パスフレーズはUserInfoオブジェクトを使用して個々のJSchセッションに与えることができます。

(免責事項:JSch Javadocは私が作成したものです。)

于 2011-10-31T15:37:10.907 に答える