Ant sem Java o_O

3 respostas
C

Olá pessoal, não sei se estou na parte correta do forum, mas lá vai a pergunta.

Alguem consegue utilziar o ant fora do java (eclipse na verdade) ?

Eu preciso criar um script para deploy de software, depois dele já empacotado tenho que acessar o servidor por ssh, copiar o arquivo para um diretório temporario e ainda pegar o md5sum do pacote.
Não faço idéia de como tabalhra com ant fora da IDE, alguem da a primeira dica?

Agradecido =)

3 Respostas

J-Chist

Tem um tutorial bom para iniciantes aqui mesmo no GUJ: http://www.guj.com.br/article.show.logic?id=30
Tente seguir o tutorial e poste suas dúvidas aqui.

C

Consegui evoluir bastante.

Agora estou tentando extrair o hash (md5sum) do arquivo.

Estou usando o <checksum> e parece funcioanr (não da erro =D), porém eu gostaria de mostrar na tela do o hash que foi criado. Essa tag não aceita echo pra fazer isso.

C

Consegui adicionar um trecho de script ant ao build ja existente da minha aplicação. No final das contas não foi tããão necessário deixar rodando foda do Eclipse.

Não consegui mostrar o hash md5 no console quando ele é gerado, mas isso não é mais problema já que o ant cria um arquivo.md5 no diretório que eu indicar (caso eu não indique, que foi o caso, ele cria no mesmo diretório do arquivo que foi checado).

Aqui usei uma task que nunca tinha nem ouvido falar. O
scp
, que necessita de uma pequena configuração pra ser utilizado dentro do Eclipse (baixar a lib aqui http://www.jcraft.com/jsch/ e adicionar no Eclipse). Essa task copia um arquivo local para o diretório remoto no servidor.
<!--==================================== 
		   Faz upload do dist para o Servidor
		====================================-->
	<target name="copy.to.server" depends="create-dist" >
		
		<echo message = "Copiando no servidor"/>
		
		<scp file="${dist.dir}/${jar.name}.jar" todir="meu.usuario:********@<ip_do_servidor>:~"/>
		
	</target>

Depois de copiar para o servidor, eu preciso acessar e fazer algumas operações dentro do servidor via ssh. Nesse caso eu fiz apenas uma cópia do arquivo do meu diretório para um diretório publico
Aqui novamente uma task talvez pouco conhecida. O sshexec que é um cliente ssh dentro do ant. Ele também necessita da mesma configuração da task anterior.

<!--==================================== 
			   Copia da pasta do usuario para o public
		====================================-->
	<target name="copy.to.public" depends="copy.to.server" >
		<echo message = "Copiando para /public "/>
		<sshexec 
			host="<ip_do_servidor>" 
			username="meu.usuario" 
			command="cp ${jar.name}.jar /home/public/Projeto/"
			password="********"
		/>
		<echo message = "Finalizado"/>
	</target>

Depois desse contato com o Ant eu só posso dizer. Ant é MUITO overpowered =D

Abraço a todos, espero que isso seja util a alguem qualquer hora ; )

Criado 25 de agosto de 2009
Ultima resposta 26 de ago. de 2009
Respostas 3
Participantes 2