使用Windows任务计划程序启动时,Doxygen未运行

时间:2012-03-08 17:27:00

标签: windows batch-file task doxygen scheduler

我已经开始使用Doxygen来记录我的团队的项目源代码(我们有C#,Objective-C和Android / Java项目)。我编写了一个Windows批处理脚本,它检查每个项目的最新主干版本,并使用命令行Doxygen生成HTML文档站点并发布到IIS 7已托管的本地文件系统上的目录。该批处理脚本可以完美地运行并完成所需的一切,但完全运行需要10-20分钟。

现在我正在尝试自动化该过程,以便它在每天结束时运行。我添加了一个只运行批处理脚本的计划任务。除了Doxygen部分之外,脚本的每个部分似乎都有效。我可以登录到机器并观察文件系统,看到正在检查工作副本没有问题,清理工作正常。但是它永远不会生成Doxygen HTML输出。输出/目标目录Doxygen配置为使用每次都保持为空。我没有找到任何类型的错误消息(在计划任务和eventvwr中)。无论我让任务调度程序单独启动它还是告诉它现在运行任务,它都不起作用。如前所述,我可以双击批处理文件并正常运行,一切正常。

此过程在我们的开发服务器上完成,它是运行Windows Vista Business 32位的旧Dell工作站。我已在“系统”帐户上运行计划任务,但我还尝试了“本地服务”和我自己的Active Directory域帐户(此服务器上的管理员),但仍然无效。

有没有其他人成功使用任务调度程序来自动化Doxygen?我不知道我做错了什么。我接下来应该寻找什么?

如果需要,我可以发布我的批处理文件和Doxygen配置文件的稍微匿名版本。

1 个答案:

答案 0 :(得分:3)

在批处理文件中,尝试将doxygen输出的重定向添加到日志文件中。然后通过调度程序运行它,看看生成了什么输出。如果doxygen以这种方式运行时遇到错误,您应该在日志文件中看到它。

doxygen doxyfile > doxygen.log 2>&1

还要确保您的bat文件正确运行,即使从doxygen stuff所在的目录之外的其他目录中调用也是如此。当通过任务调度程序运行时,我认为当前目录将是c:\ windows \ system32,所以试试这个:

c:\windows\system32>c:\path\to\batchfile\mybatch.bat

如果这会导致路径错误,则必须修复它们。