Ant新手 - 相对路径问题

时间:2009-12-03 14:25:55

标签: eclipse ant path build.xml

请帮忙,我有点疯了!!

我正在使用Eclipse生成的antfiles来构建一个带有依赖项的项目,其中一个项目在一个目录中有自己的构建文件,这个目录是我正在构建的项目的直接祖先 sibling 。例如。如果我的目录是“/ base / modules / clinicalcontext”,其中一个依赖项的目录只是“/ base / core”

因此,生成的build.xml使用../../core,其中afaik是正确的。但它不是!!从控制台很明显,Ant返回三个级别,而不仅仅是两个(它在“/ core / build.xml”上提供FileNotFound)。

我试图将相对路径更改为“../ core”,令我惊讶的是,这样一来,Ant又回到了一个级别(它感叹“/ base / modules / core”不存在)。那么在世界上我告诉Ant如何通过两个级别返回?我宁愿避免使用绝对路径,因为有一天我可能不得不将项目移动到另一台机器上。

谢谢大家。

1 个答案:

答案 0 :(得分:10)

所有Ant路径都与您当前的工作目录相关。

因此,请检查您运行脚本的目录。

我建议您开始使用${basedir}获取相对于build.xml位置的路径。

在您的情况下,相对路径应该像这样构建:${basedir}/../../core,而不是../../core

你遇到的不一致表明了为什么eclipse生成的ant脚本是一个很好的起点,但从来都不是一个好的项目构建系统。

修改即可。我想知道为什么eclipse ant生成器不会在相对路径中插入${basedir}?也许您应该将其报告为错误。