DyspC / LyricsPrimer

MIT License
0 stars 0 forks source link

Use jlink to build an executable dist #6

Open DyspC opened 3 years ago

DyspC commented 3 years ago

Using gw jlink, provides a native build in build/image (that depends on tons of libs)

It is the recommended package method in the openjfx documentation (for java 9+) but a 100Mo platform dependent dist is unusable.

Besides, it requires module-info declarations and it breaks everything in the test scope

❯ du -sh build/image
100M    build/image
❯ tree build/image 
build/image
├── bin
│   ├── LyricsPrimer
│   ├── LyricsPrimer.bat
│   ├── java
│   ├── jrunscript
│   └── keytool
├── conf
│   ├── net.properties
│   ├── security
│   │   ├── java.policy
│   │   ├── java.security
│   │   └── policy
│   │       ├── README.txt
│   │       ├── limited
│   │       │   ├── default_US_export.policy
│   │       │   ├── default_local.policy
│   │       │   └── exempt_local.policy
│   │       └── unlimited
│   │           ├── default_US_export.policy
│   │           └── default_local.policy
│   └── sound.properties
├── include
│   ├── classfile_constants.h
│   ├── darwin
│   │   ├── jawt_md.h
│   │   └── jni_md.h
│   ├── jawt.h
│   ├── jni.h
│   ├── jvmti.h
│   └── jvmticmlr.h
├── legal
│   ├── java.base
│   │   ├── ADDITIONAL_LICENSE_INFO
│   │   ├── ASSEMBLY_EXCEPTION
│   │   ├── LICENSE
│   │   ├── aes.md
│   │   ├── asm.md
│   │   ├── c-libutl.md
│   │   ├── cldr.md
│   │   ├── icu.md
│   │   ├── public_suffix.md
│   │   └── unicode.md
│   ├── java.datatransfer
│   │   ├── ADDITIONAL_LICENSE_INFO -> ../java.base/ADDITIONAL_LICENSE_INFO
│   │   ├── ASSEMBLY_EXCEPTION -> ../java.base/ASSEMBLY_EXCEPTION
│   │   └── LICENSE -> ../java.base/LICENSE
│   ├── java.desktop
│   │   ├── ADDITIONAL_LICENSE_INFO -> ../java.base/ADDITIONAL_LICENSE_INFO
│   │   ├── ASSEMBLY_EXCEPTION -> ../java.base/ASSEMBLY_EXCEPTION
│   │   ├── LICENSE -> ../java.base/LICENSE
│   │   ├── colorimaging.md
│   │   ├── freetype.md
│   │   ├── giflib.md
│   │   ├── harfbuzz.md
│   │   ├── jpeg.md
│   │   ├── lcms.md
│   │   ├── libpng.md
│   │   ├── mesa3d.md
│   │   └── xwd.md
│   ├── java.prefs
│   │   ├── ADDITIONAL_LICENSE_INFO -> ../java.base/ADDITIONAL_LICENSE_INFO
│   │   ├── ASSEMBLY_EXCEPTION -> ../java.base/ASSEMBLY_EXCEPTION
│   │   └── LICENSE -> ../java.base/LICENSE
│   ├── java.scripting
│   │   ├── ADDITIONAL_LICENSE_INFO -> ../java.base/ADDITIONAL_LICENSE_INFO
│   │   ├── ASSEMBLY_EXCEPTION -> ../java.base/ASSEMBLY_EXCEPTION
│   │   └── LICENSE -> ../java.base/LICENSE
│   ├── java.xml
│   │   ├── ADDITIONAL_LICENSE_INFO -> ../java.base/ADDITIONAL_LICENSE_INFO
│   │   ├── ASSEMBLY_EXCEPTION -> ../java.base/ASSEMBLY_EXCEPTION
│   │   ├── LICENSE -> ../java.base/LICENSE
│   │   ├── bcel.md
│   │   ├── dom.md
│   │   ├── jcup.md
│   │   ├── xalan.md
│   │   └── xerces.md
│   └── jdk.unsupported
│       ├── ADDITIONAL_LICENSE_INFO -> ../java.base/ADDITIONAL_LICENSE_INFO
│       ├── ASSEMBLY_EXCEPTION -> ../java.base/ASSEMBLY_EXCEPTION
│       └── LICENSE -> ../java.base/LICENSE
├── lib
│   ├── classlist
│   ├── fontconfig.bfc
│   ├── fontconfig.properties.src
│   ├── jli
│   │   └── libjli.dylib
│   ├── jrt-fs.jar
│   ├── jspawnhelper
│   ├── jvm.cfg
│   ├── libawt.dylib
│   ├── libawt_lwawt.dylib
│   ├── libfontmanager.dylib
│   ├── libfreetype.dylib
│   ├── libjava.dylib
│   ├── libjavajpeg.dylib
│   ├── libjawt.dylib
│   ├── libjimage.dylib
│   ├── libjsig.dylib
│   ├── libjsound.dylib
│   ├── liblcms.dylib
│   ├── libmlib_image.dylib
│   ├── libnet.dylib
│   ├── libnio.dylib
│   ├── libosx.dylib
│   ├── libosxapp.dylib
│   ├── libosxsecurity.dylib
│   ├── libosxui.dylib
│   ├── libprefs.dylib
│   ├── libsplashscreen.dylib
│   ├── libverify.dylib
│   ├── libzip.dylib
│   ├── modules
│   ├── psfont.properties.ja
│   ├── psfontj2d.properties
│   ├── security
│   │   ├── blacklisted.certs
│   │   ├── cacerts
│   │   ├── default.policy
│   │   └── public_suffix_list.dat
│   ├── server
│   │   ├── Xusage.txt
│   │   ├── libjsig.dylib
│   │   └── libjvm.dylib
│   └── tzdb.dat
└── release

https://bitbucket.org/FlPe/javafx_jlink_example/src/master/