Domingo, Janeiro 28, 2007

Adicionando uma Biblioteca ao Classpath do Aplicativo

O classpath figura entre as dúvidas mais freqüentes dos programadores iniciantes em Java.

Não foi diferente comigo. A primeira versão do ModelMat - meu primeiro programa em Java, desenvolvido nos laboratórios da faculdade - já contava com a tabela (JTable) para entrada de dados e uma área de texto colorida (JTextPane) para a saída do resultado.


JTable e JTextPane são classes complexas e me deram muito trabalho para fazer esse aplicativo tomar a forma que havia planejado. Bem, na verdade, nem tão como havia planejado...

O que faz aquela pomba de duas cabeças numa ferramenta estatística? Tiraram muita onda da minha cara por causa disso. Eu sempre respondia vagamente que era o brasão da minha família, que havia encontrado na Net, sem maiores detalhes.

Acontece que, no lugar desse brasão (que eu nem sei se é mesmo dos Fiumes), deveria estar um gráfico feito com a API JFreeChart, para ajudar o usuário a compreender melhor o resultado de suas análises. Nada a ver com a minha família.

Apesar de fazer o software funcionar utilizando JTable e JTextPane, eu simplesmente desisti do JFreeChart porque não sabia como ajustar o classpath do ModelMat para utilizar essa biblioteca. E não é que eu não tenha tentado. Lembro-me de sair furioso da mesa - acho que eu bati nela também.

O que é classpath?

No contexto da plataforma Java, é uma variável de ambiente que diz ao compilador e à JVM onde encontrar as classes que o software irá utilizar.

Configurando o Classpath de um Projeto no NetBeans

Como minha principal ferramenta de desenvolvimento é o NetBeans, é essa IDE que vou utilizar para exemplificar como configurar o classpath para usar bibliotecas de terceiros.

Viva!! Agora posso usar o JFreeChart!

Na janela Projects, localize o projeto em questão - ModelMat, no meu caso - clique com o botão direito do mouse em Libraries. Selecione Add Library... no menu contextual.


A janela Add Library irá aparecer, no entanto ainda não adicionamos a API ao conjunto de bibliotecas disponíveis no NetBeans. Por isso, clique em Manage Libraries... .


Em Library Manager, clique em New Library... e defina o nome e o tipo da biblioteca, na caixa de diálogo New Library - JFreeChart e Class Libraries respectivamente, para adicionar a API JFreeChart.


De volta à Library Manager, selecione a biblioteca que acabou de adicionar, clique em Add JAR/Folder... e navegue até o diretório onde a API está localizada.


Faça o mesmo nas abas Sources e Javadoc, indicando o caminho para o diretório com o código-fonte da biblioteca no primeiro caso, e da documentação, no segundo. Nem sempre, a API inclui seu código-fonte e documentação. Nesse caso, não há problemas - o importante mesmo é o classpath.

Clique em Ok para voltar à caixa de diálogo Add Library, selecione a biblioteca e clique em Add Library.

Pronto! Note que meu projeto também conta com outras bibliotecas, como SwingX e JCommon.


Final Feliz!

O ModelMat mostra o gráfico da regressão linear de 2° grau. Na figura abaixo, utiliza o look and feel Synthetica Blue Moon.


Leitura Recomendada:

1 comentários:

Gabriel disse...

Valeu, muito explicativo esse post.