这听起来有点牵强附会,但是有一个ANT任务,用于观察目录中的更改,然后在目录更改时运行特定的ANT类?是否有ANT任务用于查看目录中的更改?
回答
如果文件只能添加到被监视目录中或被更改,那么您可以使用antcontrib的这个简单的OutOfDate任务。
<property name="watched-dir.flagfile"
location="MUST be not in watched dir"/>
<outofdate>
<sourcefiles>
<fileset dir="watched-dir"/>
</sourcefiles>
<targetfiles>
<pathelement location="${watched-dir.flagfile}"/>
</targetfiles>
<sequential>
<!--Tasks when something changes go here-->
<touch file="${watched-dir.flagfile}"/>
</sequential>
</outofdate>
如果文件可以从观看-DIR消失,那么你有更复杂的问题,你可以通过创建观看目录的影子目录结构,如果它符合的看着-DIR检查解决。这个任务是比较复杂的,但我给你一个脚本来创建一个影子目录,因为它不是直截了当:
<property name="TALK" value="true"/>
<property name="shadow-dir"
location="MUST be not in watched dir"/>
<touch
mkdirs="true"
verbose="${TALK}"
>
<fileset dir="watched-dir">
<patterns/>
<type type="file"/>
</fileset>
<!-- That's the tricky globmapper to make touch task work -->
<globmapper from="*" to="${shadow-dir}/*"/>
</touch>
<!--
Due to how touch task with mapped fileset is implemented, it
truncates file access times down to a milliseconds, so if you
would have used outofdate task on shadow dir it would always
show that something is out of date.
Because of that, touching all files in ${shadow-dir} again fixes
that chicken and egg problem.
-->
<touch verbose="${TALK}">
<fileset dir="${shadow-dir}"/>
</touch>
随着创建的影子目录,当我离开的检查目录的一致性任务,给读者一个练习。
目标目录是否具有比源目录更旧的文件并不重要。我想要一个可以监视目录的ant任务,当我在编辑器中保存文件中的更改时,它将调用特定的ant任务。 – leeand00 2012-03-07 05:04:49
您可以用fileset selector
<apply executable="somecommand" parallel="false">
<srcfile/>
<fileset dir="${watch.dir}">
<modified/>
</fileset>
</apply>
文件集的apply任务结合起来将检查与存储的MD5校验文件更改。您需要将ANT放入循环才能重复运行此检查。这是很容易在UNIX环境中执行:
while true
> do
> ant
> sleep 300
> done
没有许可证...... :( – 2014-04-28 18:33:16
@JethroLarson现在它在当天添加您的评论,似乎:) – kekkis 2014-05-30 08:38:28
还没有想出如何使用它,不知道在哪里找到他们引用的JAR,没有足够的文档。 – Vadorequest 2015-03-26 13:09:56
- 1. 在ant junit中更改工作目录任务
- 2. 是否可以使用ant ftp任务复制空目录
- 3. 在node-supervisor中,如何查看目录中的所有更改?
- 4. 如何覆盖存储在ant lib目录中的ant任务
- 5. JAR bundler ANT任务和工作目录
- 6. 用于Javac的Ant中的ClassPath任务
- 7. 是否有任何C++代码可用于查看XPS文档?
- 8. IntelliJ:查看特定“任务”的所有更改
- 9. 是否有任何前端项目用于查看apache spark结果?
- 10. 我有办法检查Ant中是否存在目录(不是文件)?
- 11. 在任务更改中查看时间2天(或更多)前
- 12. 如何检查目录以查看它是否有文件
- 13. 查看是否有任何QTips可见?
- 14. gitpython检查使用PYTHON的文件是否有任何更改
- 15. 如何使用ANT在删除目录之前检查目录是否存在?
- 16. 登录定制Ant任务
- 17. 检查目录内容是否用shell脚本或python更改
- 18. 查看StarTeam中所有目录中的所有更新文件
- 19. 适用于Symbian的Ant任务
- 20. ant记录任务保存到不同的目录
- 21. 检查数组中是否有任何项目等于此值
- 22. Ant任务检查数据库(连接)是否存在?
- 23. 更改Ant的输出中的[exec]标签<exec>任务
- 24. 在Ant中,目标事物中的任务顺序是?
- 25. Ant检查是否存在远程目录
- 26. 是否有任何api或启动参数来更改Chrome下载目录?
- 27. 在ant中有几个目录用于库中
- 28. 是否有用于.NET的XML树查看器的任何第三方组件?
- 29. 如何查看文件,而不是使用Python进行更改的目录?
- 30. 验证是否有任何更改TabPage
那么我还没有找到简单的解决方案,所以我暂时使用bash特定命令:'inoticoming --foreground ./src/ ant \;' –
leeand00
2012-03-07 06:07:28