Jenkins (running as Windows Service) cannot find ANT

本文探讨了将Jenkins与Tomcat部署为Windows服务后遇到的问题,即Jenkins无法找到ANT。通过配置环境变量和使用系统变量解决了这一问题,并提供了详细的解决方案和注意事项。
原本 Jenkins 跑的好好的。我把跑Jenkins的 tomcat 装成 windows service后,Jenkins就找不到 ANT了。 错误如下:

cmd.exe /C '"ant.bat -file build.xml deploy && exit %%ERRORLEVEL%%"'
'ant.bat' 不是内部或外部命令,也不是可运行的程序

解决办法 1:
那肯定是Jenkins读不到环境变量了。搜了一下,可以在 Jenkins 内配置,明确的高速他 ANT在哪儿,甚至 JDK 在哪儿。参考这个: http://wiki.mxunit.org/display/default/Continuous+Integration+--+Running+tests+with+Jenkins
缺点在文中也提到了,每一个 job 都要特意指定用你定义的ANT。

解决办法 2:
后来醒悟过来,这是因为环境变量都是配置在当前用户下,而Windows Service不认识当前用户,当然就不认得已经定义好的ANT_HOME, JAVA_HOME 了。我在 tomcat 的 Windows Service里配置好登录的用户,这下就不再需要特别在 Jenkins 中重新定义环境变量了。
(BTW: 如果所有的环境变量,在一开始就不要创建成 用户环境变量,而是用 系统环境变量,也许也能解决该问题。以后我就都用系统变量了。)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值