分类:
2008-10-28 17:46:52
basedir=".">
$ ant -f diagnostic.xml现在,如果哪个方面出现了问题,你就可以在系统属性中找到问题的源头了,比如错误的Java版本或者类路径等等。
Buildfile: diagnostic.xml
systemProperties:
[echo] Java Runtime Environment version:
1.4.2_05
[echo] Java Runtime Environment vendor:
Apple Computer, Inc.
[echo] Java Runtime Environment vendor URL:
...
[echo] Default temp file path: /tmp
[echo] Operating system name: Mac OS X
[echo] Operating system architecture: ppc
[echo] Operating system version: 10.3.9
的位置将已知为正确版本的类文件存放在一个.jar或者.zip文件中并且解包它们。然后你就可以使用已知的正确版本来替换被改变的类文件了。
另一方面,配置文件可以从源文件夹中拷贝过来。我们可以适当地扩展目标configChanged并且添加一个目标configRestore来实现这一功能:depends="checksum" unless="config.unchanged">
addproperty="config.restore"/>
depends="configChanged" if="config.copy">
tofile="build/config.xml.1" overwrite="true"/>
overwrite="true"/>
将目标加入到目标all的依存关系中。如果配置文件被改变,Ant将询问用户是否希望备份该配置文件并且恢复为初始状态。如果用户按下了“Y”和回车键来选择“Yes”,属性config.copy将被设置,目标configRestore只有在这一属性被设置的情况下才会执行,它备份build/config.xml 为 build/config.xml.1,然后将原始的src/config.xml 拷贝为 build/config.xml。
结论
我们开发了一个Ant脚本来为Java应用软件执行诊断测试,该脚本检查已安装的Java版本是否符合最低要求,一些重要文件是否被改变,一个指定的Java类是否在类路径中,一个目录是否存在等等。在检查了软件的所有先决条件之后,脚本将结果报告给用户。该脚本甚至可以修复一些问题。另外,诊断脚本的输出也可以为技术支持人员所用,来快速地帮助用户,而不需要问上一大堆的问题。
资源
· 本文的源代码
· Apache Ant计划
· Apache Ant用户指南
· "Writing Ant Tasks"
Koen Vervloesem拥有计算机科学的硕士学位,从2000年开始成为IT自由撰稿人,主要为荷兰的IT期刊撰稿。版权声明:任何获得Matrix授权的网站,转载时请务必保留以下作者信息和链接
原文:
译文:【责编:yuan】
--------------------next---------------------