Apache FtpServer是一个纯Java编写的Ftp服务器,能够方便的集成到J2EE项目中。采用这种集成方式无需在服务器端配置专门的FTP服务器。它的使用也是很方便的。首先从官网http://mina.apache.org/ftpserver/downloads.html,下载合适的版本,解压缩,见下图:
由于Apache FtpServer是有java编写的,所以,在使用之前还需要配置java_home环境变量。步骤如下:
1、右击我的电脑-->系统属性,选择高级面板-->环境变量,新建java_home,变量值为安装java的安装路径;
2、在系统变量中找到Path,在变量值最后增加;%java_home%\bin;%java_home%\jre\bin 注意:分号表示与前面分割,如果前面没有可以不加;
3、新建classpath,变量值为.;%java_home%\lib;%java_home%\lib\tools.jar (要加.表示当前路径)”;
4、以上三个变量设置完毕,则按“确定”直至属性窗口消失,下来是验证看看安装是否成功。先打开“开始”-->“运行”,打入“cmd”,进入dos系统界面。然后打“java -version”,如果安装成功,系统会显示java的版本信息。
下面就是配置Apache FtpServer了。%FTP-SERVER_HOME%\res\conf中users.properties可以设定FTP Server的主要属性。以anonymous为例

1 #用户名为anonymous,密码为123456 2 ftpserver.user.anonymous.userpassword=123456 3 #homedirectory是FTP的路径,就是连接到FTP服务器时,可以访问的根目录 4 ftpserver.user.anonymous.homedirectory=./res/home 5 ftpserver.user.anonymous.enableflag=true 6 #writepermission是否可以上传文件 7 ftpserver.user.anonymous.writepermission=false 8 ftpserver.user.anonymous.maxloginnumber=20 9 ftpserver.user.anonymous.maxloginperip=2 10 #idletime为最大等待时间 11 ftpserver.user.anonymous.idletime=300 12 #uploadrate是上传的速度,单位是字节每秒 13 ftpserver.user.anonymous.uploadrate=4800 14 #downloadrate是下载速度,单位是字节每秒 15 ftpserver.user.anonymous.downloadrate=4800
向ftpd-typical.xml修改如下配置:

1 <server xmlns="http://mina.apache.org/ftpserver/spring/v1" 2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation=" 4 http://mina.apache.org/ftpserver/spring/v1 http://mina.apache.org/ftpserver/ftpserver-1.0.xsd 5 " 6 id="myServer" 7 max-logins="5" 8 anon-enabled="false" 9 max-anon-logins="0" 10 max-login-failures="3" 11 login-failure-delay="30000"> 12 <listeners> 13 <nio-listener name="default" port="21"> 14 <ssl> 15 <keystore file="./res/ftpserver.jks" password="password" /> 16 </ssl> 17 </nio-listener> 18 </listeners> 19 <file-user-manager file="./res/conf/users.properties" /> 20 </server>
在安装目录中建立一个run.bat文件,内容为:

1 d: 2 D:\apache-ftpserver-1.0.6 3 bin/ftpd.bat res/conf/ftpd-typical.xml
如果启动失败的话,可能是端口被占用的问题,可以先检查一下。