巡航控制丢失子任务中的路径
我们在巡航控制中有一些项目,大致设置如下:
A 中的Cruise Control
<ant antfile="build.xml" dir="A" target="compile" inheritAll="false" />
编译目标调用 B 中的 jar 目标作为其编译的一部分 (在“编译”中)
<ant antfile="${B.dir}/build.xml" inheritAll="false" target="jar" />
<javac ... >
因此B有一个jar任务。A从B构建jar,然后在编译中使用它。
我遇到的问题是巡航控制似乎混淆了路径。 虽然A编译任务直接从ant工作,但当从cruisecontrol运行时,它似乎试图根据B jar设置的路径找到它自己的内部库。
为了让它在ant中工作,我必须使用inheritAll =“false”标志从A调用B,但这和用fork调用javac似乎都不能解决问题。
可能相关 - 我们正在运行 ant @ 版本 1.7,cc 服务器是 ant 版本 1.6.5,我无法轻松更新。
有什么提示吗?
We have some projects in cruise control, set up roughly like this:
Cruise Control
<ant antfile="build.xml" dir="A" target="compile" inheritAll="false" />
in A the compile target calls, as a part of its compile, a jar target in B
(in "compile")
<ant antfile="${B.dir}/build.xml" inheritAll="false" target="jar" />
<javac ... >
So B has a jar task.A builds the jar from B and then uses it in it's compile.
The problem I'm running into is that cruise control seems to confuse the paths. Although the A compile task works directly from ant, when run from cruisecontrol it seems to be trying to find it's own internal libraries based on paths from the B jar settings.
To get this to work in ant I had to call B from A using the inheritAll="false" flag, but neither this nor calling javac with fork seems to resolve the problem.
Possibly related- we're running ant @ version 1.7, the cc server is at ant version 1.6.5, which I can't easily update.
Any hints?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 CruiseControl 配置中,您可以指定 anthome 或 antscript 属性,以便您使用自己的 Ant 版本,因此您应该能够从 CC 获得与在命令行中获得的相同行为。
In your CruiseControl configuration you can specify the anthome or antscript attributes so that you use your version of Ant, so you should be able to get the same behavior from CC that you get at the command-line.