- JSch -- Java Secure Channel
- http://www.jcraft.com/jsch/
id:n_shuyo:20060706:1152162198, id:n_shuyo:20060707:1152290107, id:n_shuyo:20060714:1152899236 で3回に分けて SSH2 の pure Java 実装の一つ Ganymed SSH-2 で scp & ssh やってみたメモを記したが、今回は JSch に手を出してみた。
JSch の特徴はこんな感じ。
- 100% pure Java な SSH-2 実装
- BSD style ライセンス
- ssh, scp, sftp, ポートフォワード, などなど一通りサポート
- ant タスク sshexec, scp に採用
Ganymed と比較してみる。
- Ganymed はバージョンアップも止まっており、(良く言えば)枯れている。JSch は現在も更新されており、新しめの技術にも対応し続けている。
- Ganymed はドキュメントが一通りそろっているが、JSch は JavaDoc すらない(サイトで公開されていないと言うだけではなく、ソースに JavaDoc 用のコメントが1行も書かれていない)。参考にすることができるのは、サンプルソースのみ。
- Ganymed はある程度カプセル化されたインターフェース設計になっている。JSch は結構生のプロトコルそのままなインターフェースになっている(scpのサンプルソースが一目瞭然)
カプセル化は設計思想が入ってくるので、そこがあわないと使いづらくなる可能性があるが、個人的には Ganymed のカプセル化は好印象だった。
次回、実際のコードを書いてみる。