我在Windows XP中作为计划任务,在计算机上播放Junit Nightly。我的应用程序使用JAXB,因此一些测试需要使用System Class Path来引用XSD模式。当我不在计算机上时夜间构建运行时,我会收到这样的错误:

java.lang.exception:无法从class path加载模式myschema.xsd

但是,当我手动运行构建时,我没有这样的错误。我的模式位置的环境变量是 系统 变量,不是用户变量,所以我不知道会导致此错误的原因。有什么原因导致此错误?

编辑: 像哈德逊这样的替代品并不是我要的。我要为上述技术(作为计划任务运行的批处理文件)提供解决方案。

有帮助吗?

解决方案

我的怀疑是,您的工作目录与您的期望不同(而不是专门的类Path变量)。如果您是作为用户或系统任务运行此计划的任务,这并不明显。无论哪种情况,都值得确切找出任务正在运行的地方。

也就是说,虽然我曾经使用Windows XP计划的任务设置自动构建(正好与您现在一样),但我们当前使用 巡航控制. 。从抽象的 提高您的灵活性. 。在这里,CruiseControl的最有价值的能力是检测到变化是施加的,并且仅运行构建 然后. 。我们在立即提交10分钟内发现了有关构建破裂,单位测试等破损的信息。

其他提示

哈德森 是另一个连续的集成引擎,非常简单地设置:

哈德森提供以下功能:

  • 易于安装:Just Java -Jar Hudson.war或将其部署在Servlet容器中。没有其他安装,没有数据库。
  • 简单配置:可以完全从其友好的Web GUI中配置Hudson,并具有广泛的在线错误检查和内联帮助。不需要手动调整XML,尽管如果您想这样做,也可以做到这一点。
  • 更改集支持:哈德森可以从CVS/Subversion/Mercurial生成对构建的更改列表。这也是以相当有效的方式进行的,以减少存储库的负载。
  • 永久链接:Hudson为您的大多数页面提供了清洁可读的URL,包括一些永久链接链接“最新构建”/“最新成功的构建”,以便可以轻松地从其他地方链接它们。
  • RSS/电子邮件/IM集成:通过RSS或电子邮件监视构建结果,以获取失败的实时通知。
  • 事后标记:构建可以在构建完成后很长时间进行标记,而JUNIT/TESTNG测试报告:可以将JUNIT测试报告列表,汇总和使用历史信息,例如开始破裂等历史信息等。历史趋势已绘制进入图。
  • 分布式构建:Hudson可以将构建/测试负载分配给多台计算机。这使您可以充分利用坐在开发人员桌子下面的闲置工作站。文件指纹:Hudson可以跟踪哪种构建生成哪种罐子,以及哪个构建使用的是哪种版本的罐子,等等。这甚至适用于哈德逊外部生产的罐子,也是项目追踪依赖性的理想选择。
  • 插件支持:可以通过第三方插件扩展哈德森。您可以编写插件来制作团队使用的Hudson支持工具/流程。

你应该退房 哈德森 或者 巡航控制. 。两者都易于设置,并通过更多的报告,控制和提高可用性来解决此类问题。您将花费更少的时间调查建筑问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top