Pplware

Como criar ficheiros .jar (Java)

Os últimos dias têm sido passados de volta da linguagem de programação Java. Como sabemos, uma boa forma de programar envolve classes (quando a linguagem assim o permite) que por sua vez contêm métodos que realizam determinadas acções. Depois da programação de uma aplicação “razoável”, ficamos com um conjunto de ficheiros (classes), bibliotecas, conectores, que são parte da aplicação. No entanto, o interpretador do Java pode executar uma aplicação directamente de um ficheiro jar, se tiver indicações de qual a classe que contem o método main.

Como guardar/manter todos esses ficheiros num único ficheiro?

Um ficheiro Jar (Java ARchive) permite guardar de forma compactada um conjunto de classes java. Se esse conjunto contiver uma classe com o método main poderá ser executado como um programa independente, ou seja pode funcionar como um ficheiro executável. Para tal será necessário que o ficheiro .jar contenha um ficheiro adicional (por exemplo manifest.mf), onde será especificada qual a classe que contém o main.Os ficheiros .jar,são baseados no popular formato .zip.

Vamos então aprender alguns comandos importantes para para criar, ver e executar ficheiros .jar

Criar ficheiro .jar
jar cf NOME_FICHEIRO_JAR FICHEIROS_A_INCLUIR
ex: jar cf MyApp1.jar C:\JavaProject\MyApp
Ver conteúdo de um ficheiro JAR
jar tf JAR_NOME_FICHEIRO
ex: jar tf MyApp1.jar
Ver conteúdo de um ficheiro JAR (com detalhe)
jar tvf JAR_NOME_FICHEIRO
ex. jar tvf MyApp1.jar
Extrair  conteúdo de um ficheiro JAR
jar xf JAR_NOME_FICHEIRO
ex: jar xf MyApp1.jar
Extrair um ficheiro específico
jar xf JAR_NOME_FICHEIRO FICHEIROS_A_INCLUIR
ex. jar xf MyApp1.jar Test1.class
Actualização de um .jar
jar uf NOME_FICHEIRO_JAR FICHEIROS_A_INCLUIR
ex: jar uf MyApp1.jar Test1.class
Actualização de um .jar
java -jar JAR_NOME_FICHEIRO
ex. java -jar MyApp.jar
Criar um JAR executável

No caso de pretendermos que o .jar se torne “executável”, como já referido, temos de indicar qual a classe que contém o método main. Para isso, criamos um ficheiro auxiliar (ex. MANIFEST.MF) e indicamos qual a classe que possuem o método main (apenas o nome). ALém disso, podemos ainda incluir conectores, como por exemplo a indicação do conector mysql, outros ficheiros .jar, etc.

Manifest-Version: 1.0
Main-Class: MyMainClass

Neste exemplo, a classe tem o nome MyMainClass. Para criarmos o ficheiro .jar executável, basta agora inserir o seguinte comando (devem manter as opções das opções)

jar cvfm MyApp.jar MANIFEST.MF FICHEIROS_A_INCLUIR

Estas operações podem também ser realizadas via eclipse ou netbeans. Espero que tenham gostado e vos seja útil.

Artigos relacionados

Exit mobile version