Skip to content

Exemplo de como gerar jar executável de aplicação Java com gradle. A aplicação exemplo é para gerar QRCode e Barcode.

License

Notifications You must be signed in to change notification settings

poo29004/java-qrcode-barcode-jar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub license

Como gerar arquivo .jar executável

O principal objetivo desse repositório consiste em demonstrar como gerar uma aplicação Java empacotada, com todas as bibliotecas que depende, em um único arquivo .jar por meio do Gradle Shadow plugin.

Configurações no build.gradle para usar o Gradle Shadow plugin

Foi feito uso do Gradle Shadow plugin para empacotar toda a aplicação Java, junto com suas dependências, dentro de um arquivo .jar.

No arquivo build.gradle é necessário incluir o Gradle Shadow plugin na seção plugins. O plugin application exige que indique qual classe Java que contém um método main será a classe a ser invocada pela máquina virtual Java. Assim, no trecho abaixo isso foi feito na seção application.

plugins {
    id 'application'
    // Gradle Shadow plugin
    id 'com.github.johnrengelman.shadow' version '8.1.1'
}

application{
	// informar o nome do pacote e classe Java que tem o método main
	mainClass = 'poo.Principal'
}

Adicionando bibliotecas de terceiros como dependências do projeto

Arquivo .jar contigo no presente repositório

Nesse projeto foi criado um diretório libs para armazenar o arquivo .jar da biblioteca barcode.

Foi necessário modificar o arquivo .gitignore de forma a garantir que os arquivos .jar dentro do diretório libs não sejam ignorados. Sendo assim, foi incluída a linha abaixo no final do arquivo .gitignore.

!**/libs/*.jar

E no arquivo build.gradle foi incluída uma linha na seção de dependências.

dependencies {
    
    // importando arquivo JAR que está dentro do diretório lib
    implementation files('libs/barcode.jar')
}

Biblioteca obtida de repositório online

Para gerar QRCode foi feito uso das bibliotecas Google ZXing Core e Google ZXing Java SE Extensions, as quais estão disponíveis no repositório MVN Repository.

As respectivas linhas foram incluídas no arquivo build.gradle.

dependencies {
    implementation 'com.google.zxing:core:3.5.3'

    implementation 'com.google.zxing:javase:3.5.3'
}

Como executar a aplicação por meio da tarefa run do gradle

./gradlew run --args "barcode 12345 codigo.png"

Será gerado um arquivo como o nome codigo.png dentro do diretório app.

Empacotando a aplicação com suas dependências em um arquivo .jar

Para empacotar a aplicação, bem como suas dependências, dentro de um arquivo . jar executável, faça uso da tarefa shadowJar.

./gradlew shadowJar

O arquivo app-all.jar será gerado dentro do diretório app/build/libs.

Executando a aplicação, a partir do .jar, para gerar um QRCode e um BarCode

Essa aplicação exemplo gera códigos de barra e QRCode em arquivos .png. A aplicação, quando empacotada em um arquivo .jar executável, poderá ser executada no terminal da seguinte maneira:

java -jar app-all.jar barcode 123456 imagem.png

# ou

java -jar app-all.jar qrcode 'https://www.sj.ifsc.edu.br' imagem.png

Para atualizar para a última versão do gradle

Veja documentação oficial que está disponível em https://docs.gradle.org/current/userguide/upgrading_version_8.html

gradle wrapper --gradle-version latest

About

Exemplo de como gerar jar executável de aplicação Java com gradle. A aplicação exemplo é para gerar QRCode e Barcode.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages