JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
1–10 of 133 posts
Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#2- Native installers for Mac, Windows, and Linux
- Build native bundles for all platforms from any platform (e.g. You don't need Mac to make a Mac app. You don't need Windows to make a Windows app, etc..)
- Auto updates. Your users automatically get the latest version on each launch
- Small installer bundle size (3mb compressed)
- No need to futz with Mac codesigning/notarization
- Instant download page so your users can download your app as soon as its published.
- Free, open source
Please take it for a spin, and let me know what you think.
Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#3You are a hero - I hope this project really takes off! I dare say this is even better than Java Web Start (before it became hopelessly broken).
Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#4Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#5This looks like magic. Not sure how it generates native packages for multiple platforms without running on all of them.
The idea is to fulfill the promise of WORA all the way to deployment. Everything is built and configured in a cross-platform way, and then is deployed as first-class native bundles on each platform.
Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#6Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#7This does indeed solve a significant burden. Relying on npm seems a bit awkward. I might suggest using native packages, especially on mac; something like a DMG or .package.
1. npm solves a few problems here. By publishing to npm, the app is instantly available to be downloaded and installed by users.
2. Auto updating. The launcher will automatically check for updates on launch, and download them if any are found so that users are always working with your latest version.
I may add support for other CDNs - and originally I just had it so you self host. But npm removes a lot fo complexity. It only takes a minute to create an account, and then you can publish.
> I might suggest using native packages, especially on mac; something like a DMG or .package. > Relying on npm seems a bit awkward.
1. npm solves a few problems here. By publishing to npm, the app is instantly available to be downloaded and installed by users.
2. Auto updating. The launcher will automatically check for updates on launch, and download them if any are found so that users are always working with your latest version.
I may add support for other CDNs - and originally I just had it so you self host. But npm removes a lot fo complexity. It only takes a minute to create an account, and then you can publish.
> I might suggest using native packages, especially on mac; something like a DMG or .package
The trouble with DMG and .pkg is that they need to be codesigned and notarized individually - which means you need a Mac and an Apple Developer account. Using jDeploy you don't need a Mac, and you don't need to worry about codesigning. This is because the installer is already signed and notarized. This probably the biggest pain point that I wanted to solve with jDeploy.
Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#8Can't you already do this with jpackage or graalvm to create native bundles?
At least with jpackage you already get an installer, versioning and upgradeability. I haven't tried graalvm'd native compiler but it should be possible as well.
Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#9I don't really understand what this is offering. Maybe someone could explain.. Can't you already do this with jpackage or graalvm to create native bundles? At least with jpackage you already get an installer, versioning and upgradeability. I haven't tried graalvm'd native compiler but it should be possible as well.
With jpackage or graalvm you need a Windows machine to build your windows installer because it relies on 3rd party Windows tools for the installer. Likewise on Mac and Linux. Even worse, on Mac you need to Codesign and Notarize the app, which is painful every time.
> At least with jpackage you already get an installer, versioning and upgradeability.
With jDeploy, it will check for updates when the app launches, and will download them automatically, so your users are always on the latest version.
Re: JDeploy – Deploy desktop Java apps as native bundles on Mac, Linux, and Windows
#10Super risky and definitely not a good approach from a security perspective.