谁能建议一个JAVA的开源库来监视FTP位置的变化?我正试图监控FTP位置的更改,一旦检测到更改,更改的文件将被复制到SVN位置进行提交。
Java (rdp4j)库的远程目录轮询器可以帮助您轮询FTP位置并通知您事件(例如在目录中添加/修改/删除文件)。关于FtpDirectory
和MyListener
的实现,请参阅以下快速教程中的用户指南:
package example
import java.util.concurrent.TimeUnit;
import com.github.drapostolos.rdp4j.DirectoryPoller;
import com.github.drapostolos.rdp4j.spi.PolledDirectory;
public class FtpExample {
public static void main(String[] args) throws Exception {
String host = "ftp.mozilla.org";
String workingDirectory = "pub/addons";
String username = "anonymous";
String password = "anonymous";
PolledDirectory polledDirectory = new FtpDirectory(host, workingDirectory, username, password);
DirectoryPoller dp = DirectoryPoller.newBuilder()
.addPolledDirectory(polledDirectory)
.addListener(new MyListener())
.setPollingInterval(10, TimeUnit.MINUTES)
.start();
TimeUnit.HOURS.sleep(2);
dp.stop();
}
}
对于这个问题有一个Spring集成解决方案。我们将使用FTP入站通道适配器来解决这个问题。Java WatchService在本地工作,但不在远程位置。我们正在轮询并找出变化并打印事件。
请遵循此文档FTP Spring集成文档