É o seguinte… eu fiz um arquivo build.xml para um projeto, e também um arquivo build.properties, para definir os nomes do projeto.
Em vez de eu usar no build.xml a seguinte sintaxe:
Eu coloquei no arquivo properties a seguinte sintaxe:
project.distname=meuprojeto
Daí que no xml eu mando carregar com a seguinte sintaxe:
Mas na hora de building, parece q ele não pega o valor dessa propriedade.
Alguém pode dar uma idéia de como é um arquivo properties e como carregá-lo corretamente?
na verdade um properties é apenas um mapa de strings onde se tem chave=valor em cada linha. Para usar comentários acrescente um # antes do comentario. Para abrir o properties de dentro do código java é simples.
Depois disso, o objeto prop está carregado com as configurações do arquivo.
Enfim, voltando à 2ª parte do seu problema… eu só não sei como fazer isso com o ant diretamente pelo xml…
s4nchez
Aparentemente o seu XML está correto, mas pode ser que ele não esteja encontrando o arquivo build.properties mesmo. Se não me engano, neste caso ele não dá nenhuma mensagem de erro.
Verifique se o .xml e o .properties estão no mesmo diretório e se você está usando este diretório como base_dir. Talvez ajude.
decker
Oi pessoal, valeu pela ajuda.
Realmente não estava achando mesmo o arquivo properties, agora consigo fazer ele achar.
Só que surgiu uma mensagem de advertência… eu gostaria de saber se vocês têm alguma idéia do que signifique…
" Warning: selected war files include a WEB-INF/web.xml which will be ignored (please use webxml attribute to war task)"
s4nchez
Isso acontece porque ao usar a task war é preciso indicar explicitamente onde está o web.xml
Como a mensagem mesmo está dizendo, você devia usar atributo webxlm=""
decker
Então, dentro da task war, eu indiquei o local… a task está dessa forma
Então o problema pode ser que ele esteja considerando 2 web.xml, um que você declara no webxml=“web.xml” e outro do diretório que você está usando como base para gerar o .war.
Creio que você tem 2 saídas:
*Retirar o web.xml do base_dir e colocá-lo à parte para então declará-lo no script do ant
*Utilizar a task jar ao invés da war . Esta não pede o atributo web.xml="…" e pode gerar o mesmo arquivo que você está querendo
Eu ficaria com a segunda
decker
Hmm, e como é q eu uso a task jar? Isso eu não tenho muita idéia não… hehe
Se vc puder me dar um exemplo, eu agradeço!
Valeu!
s4nchez
Esta task funciona igual a que você já está usando (war). Mesmo assim aqui vai o exemplo. Espero que isso ajude.