AntでFTP
jarが二個いるよ。
commons-net-2.0.jar
http://commons.apache.org/downloads/download_net.cgi
jakarta-oro-2.0.8.jar
http://jakarta.apache.org/site/downloads/downloads_oro.cgi
このjarをeclipseでウィンドウ>設定>Ant>ランタイム>Jarの追加。
<target name="hoge"> <ftp action="get" server="localhost" remotedir="/home/usrname" userid="user" password="pass"> <fileset dir="getdir"> <include name="**/*.log"/> </fileset> </ftp> </target>
uploadとかdeleteとかいろいろできるんだけどとりあえずdownloadがしたいのであった。
2008/11/17 追記
別環境で実行したらこんなエラーが出た。
BUILD FAILED
java.lang.UnsupportedClassVersionError: org/apache/commons/net/ftp/FTPClient (Unsupported major.minor version 49.0)
で、調べた
http://www.ne.jp/asahi/hishidama/home/tech/java/application.html#Java-version
Javacでコンパイルするとclassファイルが作られるが、classファイルの中には「どのバージョンのJavaVMで実行できるか」という“Javaクラスの形式”のバージョンが書かれる。
JavaVM(javaコマンド)では実行できるバージョンが限られており、自分より新しいバージョンで作られたclassファイルは実行することが出来ない(古すぎてもダメ)。
classファイルのメジャーバージョン/マイナーバージョンは、javacの-targetで指定した対象JavaVMバージョンの値によって異なってくる。-targetを省略した場合は-sourceの値に左右される。
今回の場合、commons-net-2.0.jar、jakarta-oro-2.0.8.jarはJRE1.5用にコンパイルされていたけど、実行環境が1.4.2だったためバージョンがあわずエラーが起きた。
対処としてはパッケージ・エクスプローラでbuild.xmlを右クリック>実行>Antビルド(Antビルド Alt+Shift+X,QとAntビルド...の二つあるけど下のほう!)>JREタブ選択>JREの分離でj2sdk1.4.2_10が選択されていたので、
「インストール済みのJRE」ボタン押してjdk1.5.0_09のインストールされているフォルダを選択し、変更(もちろん先にインストールしておく必要あり)。