ant ftp get nullpointerException
1)现象描述:
使用以下命令获取文件时会报java.lang.nullpointerException
<ftp action="get"
server="${ftp.server}"
userid="${ftp.user}"
password="${ftp.password}"
remotedir="${ftp.dir}"
verbose="yes"
depends="yes">
<fileset dir="${lib}">
<include name="*.jar"/>
</fileset>
</ftp>
2)问题原因追溯:
${ftp.dir} are files with creation date Feb 29 current year
Incorrect parse creation date Feb 29 current year
For java 1.5/1.6:
Example 1:
SimpleDateFormat sdf = new SimpleDateFormat("MMM d yy");
sdf.setLenient(false);
System.out.println("date=" + sdf.parse("Feb 29 12:14"));
Result:
date=null;
If doesn't use command sdf.setLenient(false) then result: date = Sun Mar 01 12:14:00 EET 1970
For java 1.4:
Result always "date=Sun Mar 01 12:14:00 EET 1970", because for java 1.4 doesn't throw error NullPointerException
File: commons-net-1.4.1\src\java\org\apache\commons\net\ftp\parser\FTPTimestampParserImpl.java
Caused in function (line 225: this.recentDateFormat.setLenient(false); ):
public void configure(FTPClientConfig config) {
....
String recentFormatString = config.getRecentDateFormatStr();
if (recentFormatString == null) { this.recentDateFormat = null; } else { this.recentDateFormat = new SimpleDateFormat(recentFormatString, dfs); this.recentDateFormat.setLenient(false); }
....
}
3)解决方法:
把ant的lib 下common-net.1.4.jar包替换为2.0的包。
https://issues.apache.org/jira/browse/NET-224?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel#issue-tabs
ant ftp get nullpointerException相关推荐
- ant使用ftp上传数据时配置的一个报错问题
error:ANT FTP upload file: 425 Unable to build data connection: Connection timed out 以下是xml原配置: < ...
- Gradle之FTP文件下载
Gradle之FTP文件下载 1.背景 项目上需要使用本地web,所以我们直接将web直接放入assets资源文件夹下.但是随着开发进行web包越来越大:所以我们想着从版本库里面去掉web将其忽略掉, ...
- Eclipse插件Ant里运用ftp遇到的问题
为什么80%的码农都做不了架构师?>>> 用Eclipse4.2+Ant1.8.4,在build.xml文件中使用ftp将包发到远程服务器上时总是出错,出错信息为: " ...
- ANT中的Telnet和FTP
先看代码: <project name="project" basedir="." default="ftp"> <tar ...
- linux java 构建工具有哪些,Linux ant --强大的Java开发构建工具
用途说明 ant严格说来,ant其实并非原生的Linux命令,但它是一个使用广泛.功能强大的跨平台构建工具程序,尤其是进行Java开发时,许多开源的Java项目都使用ant作为构建工具.ant命令一般 ...
- 使用 Ant 自动生成项目构建版本
引言 对 于多版本项目,要提供新版本来跟上新功能或缺陷报告增加的速度,并同时仍然保持可接受的质量水平,可能是一项不小的挑战.构建自动化可确保准确性和消除人 为错误的可能性,从而部分地解决此问题.自动化 ...
- Java程序结合Aapche Ant进行远程服务器文件备份
网上流传了好多关于Java调用Ant API的文章,也有使用Ant进行远程服务器文件的下载,本地文件上传到服务器.可惜google了好久也没有找到撇开build文件来进行ant的使用,多半是对ant的 ...
- 从ftp获取文件并生成压缩包
之前写的有bug啊 每人说.. 依赖 <dependency><groupId>commons-net</groupId><artifactId>com ...
- 从源码角度深入分析ant
Ant的基本概念 首先是ant的基本概念:Project,Target,Tasks,Properties,Paths 1.Project <project> build.xml文件最顶层的 ...
最新文章
- SLAM从0到1——状态估计之最小二乘问题解法:最速下降法、牛顿法、高斯牛顿法、LM法...
- Validform 学习笔记---基础知识整理
- SAP CRM WebClient UI Context node expose条件
- 微软2013年校园实习生招聘笔试题及答案
- linux 喂狗时间,狗狗正确喂食时间表,喂狗最佳时间指南
- shell 中${b-2} and ${b:-2}
- 双系统linux解压后怎么安装,先装linux再装windows双系统
- 信息林-青岛分类信息网.net源码
- java序列化和反序列化练习
- 【Arc GIS 零基础教学】常用的环境科学与工程专业英语词汇分享
- 《辛雷学习方法》读书笔记——第三章 身体
- 2014春晚小品《扶不扶》台词集锦
- StartActivity的2种用法
- LCD 液晶显示器 ---------- LTDC 控制器
- 12306订票候补是个坑_重磅!12306候补购票正式上线,实测你可能连排队的机会都没有!...
- Linux无桌面环境下,实现USB的自动挂载/卸载
- Linux查看并对外开放端口
- 第三方软件测试机构如何对软件进行安全性测试?
- 酷比魔方iwork1x 使用体验
- 银行承兑汇票贴现费率是多少
热门文章
- java什么是反射 代码说明_java编程中,常提到的反射代码指的是什么?
- npm publish npm resource busy or locked 4082 发布出错解决方案
- CentOS 7安装配置vsftpd做FTP服务
- 【IT】Asp.Net MVC
- “升级 iOS 最新系统后,我弃用了 iPhone!”
- 图文分析:如何利用Google的protobuf,来思考、设计、实现自己的RPC框架
- “火星人”马斯克推论:世界或是被编码而成,上帝可能是个程序员!
- 游戏界的扛把子、3D 游戏之父约翰•卡马克的传奇人生
- 拼多多就知乎不当评论致歉;谷歌员工成立首个工会;MySQL 迁移工具新版发布
- 管理大型共享数据库,做到这几点不再头疼!