Linux上64位Java监视文件

Linux上64位Java监视文件

问题描述:

我希望在创建,删除或更改文件但未使用轮询机制时收到通知。Linux上64位Java监视文件

我已经调查了相关的Java API,可以使用(EX:JNotify,JPathWatch和JXFileWatcher)。

这些API通过在操作系统中使用本地组件提供文件监控。但是我遇到的同样的问题是,他们无法在Linux 64位上运行,因为这些API中的本地组件不支持Linux 64位,这让我很困惑。

我也知道在JDK7中会有一个WatchService API作为NIO2的一部分,但是JDK7还没有发布。

那么,任何人都可以建议我一个更好的解决方案?很感谢。

+0

为什么不在Java中编写轮询器?轮询并不总是很糟糕,当然可以选择编译自己的本地代码。 – 2010-06-03 03:38:57

你试过inotify-java?另外,就我所见,JNotify的本地组件来自C源代码,因此您可以自己编译它以用于任何平台。

+0

非常感谢!我会尝试,但我不熟悉C编译器。 我需要研究它,希望不要太复杂。 – Tim 2010-06-03 03:07:23

+0

@Tim,它看起来像inotify有“x86_64”二进制文件,所以你甚至不需要编译。 – 2010-06-03 03:32:51

+0

太棒了!我认为inotify-java可以在Linux 64位上运行。尝试后者! – Tim 2010-06-03 04:11:26