linux 上使用commons-net.jar注意的问题

本文介绍了一个关于使用commons-net-3.0.1.jar实现FTP文件下载时遇到的问题,即在Windows XP上正常运行但在Linux环境下出现阻塞的情况。通过调用FTPClient.enterLocalPassiveMode()方法解决了这一问题,并提到了在WebLogic环境中可能出现的版本冲突问题及解决方案。

在项目中使用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/




<think>根据用户当前的问题,用户想要确认两件事情: 1. 当前所在的工作目录(因为用户提到执行命令时误用了`pw`命令,实际上应该是`pwd`) 2. 检查amoeba的jar文件是否存在 因此,我们需要: 1. 告诉用户如何确认当前目录(使用`pwd`命令) 2. 检查`/opt/amoeba/lib/`目录下是否存在amoeba相关的jar文件(通常以amoeba开头的jar,比如amoeba-core-*.jar) 另外,考虑到用户之前可能是在操作Amoeba,所以我们可以提供一些相关的后续步骤。 注意:由于用户是在`/opt/amoeba/bin`目录下执行命令,我们可以推断Amoeba的安装目录为`/opt/amoeba`,因此jar文件应该在`/opt/amoeba/lib`目录下。 步骤: 1. 确认当前目录:使用`pwd`命令。 2. 列出`/opt/amoeba/lib`目录下的jar文件,特别是amoeba开头的jar。 同时,我们可以提醒用户,如果之前尝试启动amoeba失败,可能是因为类路径配置问题,而类路径需要包含这些jar文件。 我们还可以提供检查jar文件存在性的命令,并解释如何正确启动amoeba(使用我们之前整合的脚本)。 最后,生成相关问题。</think>### 当前目录确认与Amoeba JAR文件检查 #### 1. **确认当前工作目录** 执行以下命令查看当前所在目录: ```bash pwd ``` 这将输出类似结果: ``` /opt/amoeba/bin # 示例输出,实际路径根据您的环境而定 ``` #### 2. **检查Amoeba核心JAR文件** Amoeba的核心JAR文件通常位于`/opt/amoeba/lib`目录下。执行以下命令检查: ```bash ls -l /opt/amoeba/lib/amoeba-*.jar ``` 正常应看到类似输出(具体版本号可能不同): ``` -rw-r--r-- 1 root root 1.2M Jan 15 amoeba-core-3.0.0.jar -rw-r--r-- 1 root root 870K Jan 15 amoeba-mysql-3.0.0.jar ``` #### 3. **关键文件验证** | 检查项 | 命令 | 预期结果 | |-----------------|-------------------------------|------------------------------| | 核心JAR是否存在 | `ls /opt/amoeba/lib/*amoeba*` | 列出所有amoeba开头的JAR文件 | | 配置文件 | `ls /opt/amoeba/conf/*.xml` | 包含amoeba.xml等配置文件 | | 启动日志 | `ls /opt/amoeba/logs/*.log` | 包含amoeba.log等日志文件 | #### 4. **常见问题排查** 如果未找到JAR文件: 1. 确认安装路径: ```bash # 搜索可能的安装位置 sudo find / -name "*amoeba*.jar" 2>/dev/null ``` 2. 验证安装完整性: ```bash # 检查标准目录结构 ls -l /opt/amoeba/{bin,conf,lib,logs} ``` 3. 重新安装(如果需要): ```bash # 示例安装步骤 wget https://example.com/amoeba-3.0.0.zip unzip amoeba-3.0.0.zip -d /opt/ ``` #### 5. **正确启动方式** 确认文件存在后,使用整合脚本启动: ```bash cd /opt/amoeba/bin ./start.sh # 或使用之前提供的unified_start.sh ``` > **注意**:`pw`命令在Linux中无效,正确命令是`pwd`(Print Working Directory)。若需查看完整路径,请始终使用`pwd`[^1]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值