Artigo Java Magazine 52 - Builds Java ME Automatizados com Antenna

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

O Antenna oferece uma série de tarefas (tasks) do Ant, adequadas para o desenvolvimento de aplicações MIDP.

Esse artigo faz parte da revista Java Magazine edição 52. Clique aqui para ler todos os artigos desta edição 

Wireless Update

Builds Java ME Automatizados com Antenna

 

O build de aplicações costuma ocupar muito tempo que poderia ser usado para tarefas menos mecânicas,  e definir uma forma automatizada para isso leva a economias em tempo e dinheiro. É por isso que é tão grande a popularidade do Ant e, no ambiente Java ME, do Antenna.

O Antenna oferece uma série de tarefas (tasks) do Ant, adequadas para o desenvolvimento de aplicações MIDP. São tarefas construídas com base em funcionalidades do Java Wireless Toolkit (WTK) da Sun; portanto é necessário ter o WTK instalado. Através do Antenna, é possível compilar, pré-verificar, empacotar e ofuscar classes, manipular descritores (JAD) e executar aplicações MIDP, entre outras operações, tudo isso de forma automatizada. 

Nota :O Wireless Toolkit da Sun para CLDC chegou recentemente à versão 2.5.2, cujo destaque é o suporte multiusuário: a mesma instalação do toolkit pode ser compartilhada por vários usuários na mesma máquina, tanto na versão Windows quanto em Linux.

O desenvolvimento do Antenna foi iniciado em 2002, mas só recentemente a ferramenta chegou à versão 1.0.0. Veremos neste artigo como utilizar a nova versão do Antenna na prática, fazendo o build de uma MIDlet, ao mesmo tempo que analisamos as tarefas do Antenna.

 

Pré-requisitos

O Antenna faz uso de vários outros projetos. Além do WTK, que você pode baixar em java.sun.com/products/sjwtoolkit/ download.html, deve-se ter o Ant instalado (ant.apache.org).

Vamos precisar também do ProGuard,para ofuscamento o código. O ofuscamento serve para diminuir o tamanho final da aplicação, reduzindo nomes de métodos, classes e variáveis, entre outros elementos; também protege o bytecode de sua aplicação, pois “embaralha” o código tornando-o ilegível após uma engenharia reversa. Faça o download da versão 4.0 do ProGuard, em proguard.sf.net, e descompacte em um diretório de fácil acesso, por exemplo c:\proguard4.0.

Nota: A versão 4.0 do ProGuard, lançada recentemente, acrescenta uma característica importante para desenvolvedores Java ME1. Nessa nova versão é possível, além de ofuscar o código, pré-verificar a aplicação, garantindo que tal operação fique independente de um aplicativo externo. No entanto, o Antenna, no momento em que escrevo, ainda usa o programa preverify.exe do WTK para executar esse processo.

versão 4.0 do ProGuard, lançada recentemente, acrescenta uma característica importante para desenvolvedores Java ME1. Nessa nova versão é possível, além de ofuscar o código, pré-verificar a aplicação, garantindo que tal operação fique independente de um aplicativo externo. No entanto, o Antenna, no momento em que escrevo, ainda usa o programa preverify.exe do WTK para executar esse processo.

 

O Antenna em si pode ser obtido em antenna. sf.net. Para usá-lo, é suficiente colocar o arquivo antenna-bin-1.0.0.jar dentro do diretório lib da instalação do Ant. Terminados os downloads e a instalação, é necessário também configurar uma variável de ambiente, para que seja possível executar o build. Defina a variável ANT_HOME, apontando para o caminho onde foi descompactado o Ant, no nosso caso c:\ant.

 

O projeto Java ME

O projeto Java ME de exemplo será simples, pois o enfoque é mesmo mostrar as tarefas do Antenna. Vamos apenas criar um diretório C:\JM_HelloWorld (ou o equivalente no Linux). Dentro dele, criamos outro diretório, src, para os fontes, onde colocamos o arquivo mostrado na Listagem 1 (HelloWorldMIDlet.java). Essa MIDlet mostra a clássica mensagem de cumprimento na tela do dispositivo.

 

Listagem 1. MIDlet mínima para testes com o Antenna

import javax.microedition.lcdui.*;

import javax.microedition.midlet.*;

 

public class HelloWorldMIDlet extends MIDlet implements CommandListener

{

private Form form;

private Display display;

private Command cmdSair = new Command(“Sair”, Command.EXIT, 1);

 

public HelloWorldMIDlet() {

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?