Novo para Ant - Problema com caminhos relativos
Pergunta
Por favor, ajuda, eu estou ficando ligeiramente doido !!
Eu estou usando antfiles Eclipse-gerados para construir um projeto com dependências, um dos quais tem a sua própria buildfile em um diretório que é uma irmão para o antepassado direto do projeto que estou construindo . Por exemplo. se o meu diretório é "/ base / modules / clinicalcontext" , o diretório de uma das dependências é simplesmente "/ base / core" .
Assim, os usos build.xml gerados ../../core que afaik está correto. Mas não é!! A partir do console é evidente que Ant remonta três níveis e não apenas dois (ele dá FileNotFound em "/ core / build.xml" ).
Eu tentei mudar o caminho relativo para "../ core" e muito para minha surpresa, desta forma Ant remonta pelo um nível (ele lamenta "/ base / modules / core" sendo inexistente). Assim como no mundo eu digo Ant voltar atrás por dois níveis? Eu prefiro evitar o uso de caminhos absolutos, já que eu poderia ter para mover o projeto para um dia máquina diferente.
Obrigado a todos.
Solução
caminho Todos Ant serão relativos ao seu diretório de trabalho atual.
Assim, verifique o que diretório que você está executando o seu script a partir de.
Eu sugiro que você começar a usar ${basedir}
para obter um caminho relativo para um local de build.xml
.
No seu caso, o caminho relativo deve ser construído como este:. ${basedir}/../../core
, em vez de ../../core
As inconsistências você encontrar ilustrar um ponto por scripts ant gerado pelo eclipse são um bom ponto de partida, mas nunca um bom sistema de projeto de construção.
Editar . Eu me pergunto por eclipse formiga gerador não insere ${basedir}
em caminhos relativos? Talvez você deve relatá-lo como um bug.