Felhasználói eszközök

Eszközök a webhelyen


oktatas:programozas:java:java_jpackage

< Java

Java jpackage

JAR

A jpackage parancsnak szükséges lehet kész .jar fájl.

jar \
    --create \
    --main-class App \
    --file mutat.jar \
    -C bin .

Ugyanaz rövidített kapcsolókkal:

jar -c -e App -f mutat.jar -C bin .

jpackage

Kapcsolók:

jpackage \
  --type app-image \
  --input input \
  --dest output \
  --name App01 \
  --main-jar App01-0.1.jar \
  --main-class lan.zold.app01.App \
  --icon app01.ico

Típusnak megadható:

  • app-image
  • exe
  • msi
  • rpm
  • deb
  • pkg
  • dmg

Helló program Linuxon

Készítsünk egy Java alkalmazást például VSCode segítségével, mutat néven.

Ha minden elkészült a következő könyvtár szerkezetet kapjuk.

mutat/
  |-.vscode/
  |   `-settings.json
  |-bin/
  |  `-App.class
  |-lib/
  |-output/
  |   `-mutat_1.0-1_amd64.deb
  |-src/
  |   `-App.java
  |-gen_jar.sh
  |-gen_package.sh
  |-mutat.jar
  `-README.md
src/App.java
public class App {
    public static void main(String[] args) throws Exception {
        System.out.println("Lássuk");
 
    }
}

Egy futtatással elkészül a bin könyvtár benne az App.class.

Készítsük el a mutat.jar fájlt:

gen_jar.sh
jar \
    --create \
    --main-class App \
    --file mutat.jar \
    -C bin .

Készítsük el az output/mutat_1.0-1_amd64.deb csomagot:

gen_package.sh
jpackage \
  --type deb \
  --input . \
  --dest output \
  --name mutat \
  --main-jar mutat.jar \
  --main-class App

Linuxon a mutat alkalmazás a következő helyre telepszik:

/opt/mutat

Futtassuk:

/opt/mutat/bin/mutat

Java 17

A Java 17 verzióval ehhez hasonló hibát kapunk, ha /opt/mutat/bin/mutat-t futatjuk:

$ /opt/mutat/bin/mutat 
pure virtual method called
terminate called without an active exception
Lássuk

Windows

Windowson útvonalba kell tenni a Java bin könyvtárát. Legyen például:

  • c:\Program Files\Java\jdk-17.0.2\bin\

Ellenőrzés:

jpackage --version

JAR készítése

gen_jar.bat
@echo off
 
jar cfm mutat.jar manifest.mf -C bin/ .
 
pause
gen_jar.bat
@echo off
 
jpackage --type app-image --input . --dest output --name mutat --main-jar mutat.jar --main-class App
 
pause

Létrejön az output/mutat könyvtár, benne mutat.exe és más fájlok.

oktatas/programozas/java/java_jpackage.txt · Utolsó módosítás: 2023/09/08 21:47 szerkesztette: admin