我正在使用sftp入站通道适配器和自定义远程过滤器。如果过滤器接受该文件,则稍后处理该文件并将其删除,因为我为远程删除设置了属性“true”。
现在,当我的文件未成功处理并抛出异常时,我会捕获该异常,并希望将本地下载文件移动到其他位置,但是当我使用FileUtils.forceDelete执行此操作时,它会抛出异常
java.io.IOException:无法删除文件:
看起来其他一些线程已锁定此文件。有没有办法可以找出谁拥有锁以及如何释放它,以便我的听众可以将它移动到差异位置。
答案 0 :(得分:1)
未成功处理并抛出异常
请务必关闭finally块中的文件,以便处理逻辑始终关闭文件。