Ant Relative Path - 与jar路径不同的build.xml路径

时间:2011-12-31 23:47:08

标签: java ant jar classpath

首先是一些背景。我继承了一个已经为我编写构建文件的项目,所以我正在寻找一种比重写整个build.xml文件更简单的方法。我遇到了ANT问题并指定了相对路径,但相对路径应该相对于项目文件夹,而不是我的build.xml文件。我知道这不是ANT的工作方式,默认情况下build.xml的basedir是build.xml文件所在的位置。项目的结构或多或少如下。

SampleProject
    src
    bld
        build.xml
    lib
        log4j.jar
    dist
        SampleProject.jar
        lib(with all the project folder lib contents)

所以这是我的问题。在我的构建文件中,我将lib文件夹指定为 ../ lib / * .jar ,并将其用作我的类路径,然而,该相对路径被转换为jar文件的MANIFEST.MF所以我的jar文件也在寻找 ../ lib 。有没有办法,除了移动构建文件的位置,告诉SampleProject.jar它的lib文件夹在同一个目录中?

注意:我找到的一个方法是将 lib 文件夹放在 bld 文件夹中,然后使构建文件找到 ./ lib < / strong>但我不希望每次更改它时都要复制lib文件夹。我希望它留在原地。任何想法都会有所帮助,谢谢!

1 个答案:

答案 0 :(得分:2)

也许我没有理解这个问题,但您可以在Ant脚本中指定basedir - http://ant.apache.org/manual/using.html。它是项目标签的一个属性。