在浏览器中运行Hudson构建失败,但从命令行运行

问题描述:

我为生成javascript文件的项目设置了新的Hudson任务(在WinXP上),并在构建过程中执行xslt转换。在浏览器中运行Hudson构建失败,但从命令行运行

从Hudson运行时,ant构建在XSL转换上失败,但在从命令行运行相同代码库(即Hudson工作区)上的相同构建时工作正常。

失败消息为:

线208:变量“屏幕”在相同的范围多次定义。

我已经尝试配置哈德森直接使用蚂蚁和使用批处理脚本 - 都在哈德逊失败。

我试过Firefox,IE6和Chrome,并且看到了同样的问题。

任何人都可以建议我们如何能解决哈德森这个问题?

问题解决了。

我们的构建实际上依赖于jdk 1.4.2,并且Hudson似乎使用1.6来运行。当我将Hudson设置为服务运行时,它以我的本地用户身份运行,这意味着它拾取了1.4.2 JAVA_HOME环境变量 - 因此可以工作。

我想另一个可能的解决方案是配置Hudson默认使用1.4.2。

我认为这不是直接与Hudson相关的问题,因为它与构建脚本和/或环境本身一样。

您的构建脚本是依赖于某些环境变量被定义的,或者更糟糕的是,从一个特定的目录结构中运行的作业(也就是说,它在从/ home/mash/blah下运行,但不能从另一个目录下运行/ tmp目录)?构建脚本是否通过相对路径引用外部文件?

这些是我想看的东西。对于环境变量,你可以告诉Hudson将它们传递给Ant。对于其他问题,您可能需要更改构建脚本。检查Hudson提供的控制台输出,并设置Ant以打印详细/调试消息以更好地了解环境/文件路径。