Относительный путь Ant - путь build.xml, отличный от пути jar - PullRequest
1 голос
/ 01 января 2012

Сначала немного фона. Я унаследовал проект, в котором файл сборки уже был написан для меня, поэтому я ищу более простой способ, чем переписать весь файл build.xml. Я сталкиваюсь с проблемой с ANT и задаю относительные пути, но относительный путь должен быть относительно папки проекта, а не там, где находится мой файл build.xml. Я знаю, что это не то, как работает ANT, по умолчанию файл buildir.xml находится в файле build.xml. Структура проекта более или менее следующая.

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

Так вот моя проблема. В моем файле сборки я указываю папку lib как .. / lib / *. Jar и использую ее как путь к классу, однако, этот относительный путь преобразуется в MANIFEST.MF файла jar, поэтому мой jar-файл также ищет .. / lib . Есть ли способ, кроме перемещения местоположения файла сборки, сообщить SampleProject.jar, что его папка lib находится в том же каталоге?

Примечание. Один из найденных способов обойти это - поместить папку lib в папку bld , а затем заставить файл сборки искать . / Lib . но я не хочу копировать папку lib каждый раз, когда меняю ее. Я хочу, чтобы он оставался там, где он есть. Любые идеи будут полезны, спасибо!

1 Ответ

2 голосов
/ 01 января 2012

Возможно, я не понял вопроса, но вы можете указать basedir в скрипте Ant - http://ant.apache.org/manual/using.html. Это атрибут в теге проекта.

...