【发布时间】:2014-08-05 21:48:11
【问题描述】:
我有一个 Google 应用引擎 cron 作业,我想对其进行测试并在特定模块和版本上运行。我该怎么做?
我已经尝试在 cron.xml 中指定目标:
<?xml version="1.0" encoding="UTF-8"?>
<cronentries>
<cron>
<url>/purgeAll</url>
<description>delete old entities</description>
<schedule>every day 10:45</schedule>
<timezone>America/Los_Angeles</timezone>
<target>ninaddev</target>
</cron>
</cronentries>
我也尝试在默认包中添加一个 dipatch.xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<dispatch-entries>
<dispatch>
<module>internal</module>
<url>*/purgeAll</url>
</dispatch>
</dispatch-entries>
结果是 cron 在指定的版本(ninaddev)上运行,而不是在指定的模块(内部)上运行,我可以看到它在此处与日志一起运行。
我认为这是因为调度文件不能针对默认版本以外的版本https://developers.google.com/appengine/docs/java/modules/routing:“您可以创建调度文件来覆盖未指定版本的 URL 的默认路由(如上所述)。 "
可能相关的最后一件事是,我正在将我的模块(默认和内部)一起上传到此处指定的 EAR 结构中:https://developers.google.com/appengine/docs/java/modules/
任何有关如何让 cron 在“ninaddev”版本和“内部”模块上运行的帮助将不胜感激。
【问题讨论】:
标签: java google-app-engine cron