我正在使用WatchService来同步数据文件和应用程序工作台。当我重命名/移动被监视的目录时,我没有收到任何事件,也没有WatchKey变得无效。我仍然可以从重命名后的目录中获取事件,但据我所知,除了WatchKey.watchable()之外,找不到WatchKey的实际路径,但这仍然返...
我正在使用一个观察服务来监视目录并在新文件创建时触发逻辑。我最近遇到的一个挑战是当大量需要处理的文件太快地复制到观察目录中时触发了溢出。 API关于溢出的说明如下: 文件系统可能报告事件的速度比检索或处理速度更快,实现可能对它所能积累的事件数量施加未指定的限制。如果一个实现明知道丢弃事件,...
当我尝试注册文件而不是目录时,会抛出java.nio.file.NotDirectoryException。我能监听单个文件的更改,而不是整个目录吗?
我一直在尝试使用java.nio.file.WatchService并注意到从WatchEvent.context()返回的Path不会返回正确的.toAbsolutePath()。以下是一个示例应用程序: public class FsWatcher { public static v...
我正在使用watchKey来监听特定文件夹中的文件更改。Path _directotyToWatch = Paths.get("E:/Raja"); WatchService watcherSvc = FileSystems.getDefault().newWatchService(); Wa...
我注意到使用java.nio.file.WatchService时出现了奇怪的行为(不确定这是否是预期行为)。 问题在于我已经注册了一个带有WatchService的文件夹。 当我将新文件复制到此文件夹中时,会生成两个WatchEvent事件,分别是: 'ENTRY_CREATE'和'EN...
StandardWatchEventKinds.ENTRY_MODIFY的Javadoc说明: 目录条目已修改。当为此事件注册目录时,当观察到目录中的条目已被修改时,将排队WatchKey。此事件的事件计数为1或更大。 当您通过编辑器编辑文件的内容时,它会同时修改日期(或其他元数据...
我正在参与的项目一直使用Java 6和jpathwatch (.95),现在正在升级为Java 7。目前在Windows 7和2008 Server上运行。我正在重构部分代码以使用新的Java 7 NIO,这相对来说是比较简单的 - 甚至可以使用NIO.2替换jpathwatch。然而,我们代...
我正在使用来自Oracle的WatchService示例: import java.nio.file.*; import static java.nio.file.StandardWatchEventKinds.*; import static java.nio.file.LinkOptio...
我在使用Java 7 WatchService API跟踪目录中文件内容的应用程序中遇到了一个反复出现的问题。当底层文件系统在文件上触发修改事件时,我想立即计算其SHA-256。 但经常出现另一个进程打开了该文件(例如Word),从而持有独占锁,防止我的应用程序进行任何读/写操作。如果针对已...