想用Ant直接向ftp传输更新后的jar文件,就采用ftp task,按照
http://ant.apache.org/manual/OptionalTasks/ftp.html
的说明:
<target name="ftp update">
<ftp server="xxx.xxx.xxx.xxx" remotedir="/upload/test" userid="anonymous" password="test@test.com">
<fileset dir="${jar-dist}" />
</ftp>
</target>
运行就出错build failed:
java.lang.NoClassDefFoundError org/apache/commons/net/ftp/FTPClient
根据http://ant.apache.org/manual/install.html#commons-net提示,ftp task需要
jakarta-oro-xxx.jar和commons-net-xxx.jar。下载后放到ant的home目录下lib中。
本以为这样就可以了,但是还是出原来的错。重起Eclipse也没用。
最后在Preferences->Ant->Runtime->Classpath中Add External Jar,增加这两个jar后正常。
也就是说,虽然这两个包放到ant/lib了,但是它默认不加载,可能它默认只加载ant-*.jar。