Вы можете выполнить ftp mkdir перед вызовом задачи ftp del , это обеспечит существование каталога перед его удалением. хотя, конечно, это может не сработать, если каталог уже существует. Я не могу проверить это, но согласно docs добавление ignoreNoncriticalErrors = "true" может позволить mkdir не завершиться ошибкой, если каталог существует.
Например:
<ftp action="mkdir"
server="nexus"
userid="anonymous"
password="my.name@gmail.com"
remotedir="/pub/${project.groupId}/${project.artifactId}"
ignoreNoncriticalErrors="true"/>
Обновление: с Ftp.java похоже, это будет работать:
/**
* Create the specified directory on the remote host.
*
* @param ftp The FTP client connection
* @param dir The directory to create (format must be correct for host
* type)
* @throws IOException in unknown circumstances
* @throws BuildException if ignoreNoncriticalErrors has not been set to true
* and a directory could not be created, for instance because it was
* already existing. Precisely, the codes 521, 550 and 553 will trigger
* a BuildException
*/
protected void makeRemoteDir(FTPClient ftp, String dir)
throws IOException, BuildException {
...