I did a bit of research on this subject and first found the apache ftp library. I tried it and for whatever reason it threw an exception when I tried to get the timestamp on files. A lot of other java ftp libraries are not open source. This one was very easy to setup and I've had no problems with it so far. I recommend it.
An open, cross-platform journaling program.
A scientific plotting package.