build-jpackage
warp
build-jpackage | warp | |
---|---|---|
2 | 5 | |
17 | 1,894 | |
- | - | |
0.9 | 10.0 | |
about 1 year ago | about 4 years ago | |
Java | Rust | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
build-jpackage
warp
-
3 Ways to Package Your Java Project into a JAR for Deployment
jpackage is not the only tool for bundling Java. There is also warp-packer, an open-source tool to create self-contained binary applications from Node.js, .NET Core, and Java. warp-packer requires a similar workflow to Method 2, where you create your modified Java Runtime image and an executable script before bundling everything together into an executable.
-
Options for turning Java into .exe or: abusing GraalVM to generate a launcher .exe
https://github.com/dgiagio/warp just googled it, no direct experience
-
Cross-platform, cross-compiled JavaFX desktop application
KeenWrite is my free, open-source, cross-platform desktop Markdown text editor developed using JavaFX. The installer script uses warp-packer to create installation-free self-extracting binaries for Windows and Linux.
-
The Decline and Fall of Java on the Desktop Part 1 (1999-2005)
My desktop text editor[1] is written using JavaFX and leans on Warp Packer[2] to create installer-free, multi-platform executable binaries (without jlink). A user contributed a new dark theme[3], which blends nicely with the desktop.
The JavaFX-based WebView (an HTML rendering component) is lauded, but has no direct API to control the scroll position and is itself a memory hog. Scrolling must be handled through JavaScript, and that indirection is as unwieldy as you can probably imagine. FlyingSaucer is a workable alternative to WebView, but comes with numerous technical issues that rear themselves when embedding a Swing widget inside a JavaFX application---as I discovered during development.
Were I to start from scratch, I would definitely seek out alternative cross-platform programming languages for desktop application development.
[1]: https://github.com/DaveJarvis/keenwrite
[2]: https://github.com/dgiagio/warp
[3]: https://i.ibb.co/QpqS0NS/screenshot.png
-
In support of single binary executable packages
"Java -- possible, but you'll need a startup script to just call java -jar some-tool.jar; (also not a good fit for short-lived tools, mainly due to startup times;)"
Two technologies to look at:
* Warp Packer -- https://github.com/dgiagio/warp/
* Liberica Native Image Kit -- https://bell-sw.com/pages/liberica-native-image-kit/
Warp Packer bundles my JavaFX desktop application, KeenWrite into single binary executable files:
* https://github.com/DaveJarvis/keenwrite/releases/download/2.... (Linux)
* https://github.com/DaveJarvis/keenwrite/releases/download/2.... (Windows)
* https://github.com/DaveJarvis/keenwrite/releases/download/2....
The start-up time for the first launch of the .bin or .exe is slow because it unpacks to a user directory. Subsequent starts are fine enough, even when running from the command-line as a short-lived task. Here's the script that creates the self-contained executable files:
https://github.com/DaveJarvis/keenwrite/blob/master/installe...
To create a release for all three files, I run a single shell script from a build machine:
https://github.com/DaveJarvis/keenwrite/blob/master/release....
I could probably generate a binary for MacOS, but not enough people have asked.
What are some alternatives?
actions-gh-pages - GitHub Actions for GitHub Pages 🚀 Deploy static files and publish your site easily. Static-Site-Generators-friendly.
cljfx - Declarative, functional and extensible wrapper of JavaFX inspired by better parts of react and re-frame