linux 上使用commons-net.jar中 FTPClient类的listFiles、retrieveFile等方法停止不执行,出现假死状态解决办法
2017-06-30 11:00
766 查看
在项目中使用commons-net-3.0.1.jar实现FTP文件的下载,在windows xp上运行正常,但是放到linux上,却出现问题,程序运行到
FTPClient.listFiles()或者FTPClient.retrieveFile()方法时,就停止在那里,什么反应都没有,出现假死状态。google一把,发现很多人也出现了此类问题,最终在一个帖子里找到了解决办法。在调用这两个方法之前,调用FTPClient.enterLocalPassiveMode();这个方法的意思就是每次数据连接之前,ftp
client告诉ftp server开通一个端口来传输数据。为什么要这样做呢,因为ftp server可能每次开启不同的端口来传输数据,但是在linux上,由于安全限制,可能某些端口没有开启,所以就出现阻塞。OK,问题解决。
另外,如果程序部署在weblogic上, 也有可能出现一些问题,为什么,因为weblogic自己也有commons-net包,如果weblogic的jar包版本低于你使用的版本,就设置weblogic 的classpath,优先加载工程里的jar包。
来源:http://lgclf.blog.163.com/blog/static/384452222011913114428161/
FTPClient.listFiles()或者FTPClient.retrieveFile()方法时,就停止在那里,什么反应都没有,出现假死状态。google一把,发现很多人也出现了此类问题,最终在一个帖子里找到了解决办法。在调用这两个方法之前,调用FTPClient.enterLocalPassiveMode();这个方法的意思就是每次数据连接之前,ftp
client告诉ftp server开通一个端口来传输数据。为什么要这样做呢,因为ftp server可能每次开启不同的端口来传输数据,但是在linux上,由于安全限制,可能某些端口没有开启,所以就出现阻塞。OK,问题解决。
另外,如果程序部署在weblogic上, 也有可能出现一些问题,为什么,因为weblogic自己也有commons-net包,如果weblogic的jar包版本低于你使用的版本,就设置weblogic 的classpath,优先加载工程里的jar包。
来源:http://lgclf.blog.163.com/blog/static/384452222011913114428161/
相关文章推荐
- linux 上使用commons-net.jar中 FTPClient类的listFiles、retrieveFile等方法停止不执行,出现假死状态解决办法
- Eclips加载不了rt.jar下面的sun.net.ftp.FtpClient类,解决方法
- org.apache.commons.net.ftp.FTPClient上传文件大小改变的解决方法
- 使用AES加密解密在windows上使用没有问题,在Linux(Centos6.5)上出现解密失败的解决方法
- QC出现HP AML-client停止工作解决方法
- 使用net.sf.json包提供的JSONObject.toBean方法时,日期转化错误解决办法
- linux 使用退格键时出现^H解决方法
- 关于linux中使用vim打开文件出现^M的解决方法
- ftpClient类问题解决两则:方法找不到和listFiles方法返回个数为零
- Linux--14:ubuntu12.04 vi不能正常使用、右上角出现红杠提醒更新出问题、网速比相同条件下windows下慢 解决方法
- net2.0中使用Cookie保存中文出现乱码的解决方法
- 【FTP】使用org.apache.commons.net.ftp.FTPClient 实现FTP的上传下载
- Linux 下执行指令出现“bad interpreter”错误的解决方法
- \t\t解决MyEclipse联网编辑JSP页面出现类、方法等提示信息的时候出现死机、假死等问题的办法
- 安装交叉编译工具,执行arm-linux-gcc –v命令出现提示找不到该文件或目录?解决方法
- 在使用ASP.NET网站管理工具出现“遇到错误。请返回上一页并重试。”的解决办法!
- 安装交叉编译工具,执行arm-linux-gcc –v命令出现提示找不到该文件或目录?解决方法(转)
- ASP.NET使用X509Certificate2出现一系列问题的解决方法
- plsql使用Text Importer导入csv数据时不显示导入的个数出现假死的解决办法
- 引用 commons.net包中的FTPClient.listFiles()方法返回null的问题及其解决方案(转)