Ship Java Apps That Update Themselves

Publish your JavaFX, Swing, or Kotlin app to npm or GitHub. Your users get native installers for Mac, Windows, and Linux—with automatic updates built in.

  • Auto-updates on every launch
  • Mac installers signed and notarized by jDeploy
  • JDK/JavaFX runtime downloads automatically
jDeploy workflow: publish to npm or GitHub, users get auto-updating native apps

How it works

In a Nutshell

Why Use jDeploy?

icon

Automatic Updates

Publish once, update forever. Your users automatically get the latest version every time they launch.

icon

One-Click Publishing

Publish to npm or GitHub Releases. Users download native installers from your jdeploy.com page.

icon

No Codesigning Headaches

Mac installers are signed and notarized by jDeploy. Ship to macOS without an Apple Developer account.

icon

JavaFX & Swing Ready

Works with any JVM app. The right JDK or JavaFX runtime downloads automatically on first launch.

icon

GitHub Actions

Automate releases with the jDeploy GitHub Action. Push a tag, and your app is built and published automatically.

icon

CLI & Services

Ship CLI tools, background services, and system tray apps—all from one package. New in 6.0

Just Released

New in jDeploy 6.0

jDeploy 6.0 transforms from a GUI bundler into a full multi-modal application platform.

Multi-modal apps

Multi-Modal Apps

Ship a GUI app, CLI commands, background services, and a system tray helper—all from one package.json.

AI-ready

AI-Ready

jDeploy ships with an MCP server so AI agents can set up and publish projects. Plus, you can deploy your own MCP servers as part of your app—with automatic registration in Claude, Cursor, and more.

Deep linking

Deep Linking & Singleton Mode

Register custom URL schemes like myapp:// and handle links from web pages, emails, or your system tray. Singleton mode routes all links to your running instance.

Project templates

Project Templates

Start fast with templates for CLI apps (Picocli), REST services (Quarkus, Spring Boot), and MCP servers. Pre-configured for jDeploy out of the box.

Try it out

Sample Apps Deployed with jDeploy

icon

SwingSet2

The canonical example Swing app, deployed as native bundles using jDeploy

icon

JavaFX Ensemble 8

Ensemble provides a gallery of over 100 sample applications that use a wide range of JavaFX features

icon

Brokk

AI-powered code assistant for large codebases

icon

SnapCharts

A Chart design app and library for Java and JavaScript

icon

SnapCode

A Java IDE for education

icon

Melody Matrix

MIDI Tool to record, play, and visualize your music

Add your app here

If you use jDeploy and would have your app featured here, drop us a line in the discussion forum.

Learn More

jDeploy Documentation

icon

Developers Guide

Comprehensive documentation for developers who want to deploy their apps using jDeploy

icon

Deep Linking Tutorial

Add custom URL schemes and singleton mode to your Swing or JavaFX app

icon

Kotlin Multiplatform

Deploy Compose Multiplatform desktop apps with jDeploy

icon

CLI Apps Tutorial

Tutorial on distributing command-line apps using jDeploy

icon

FAQ

Frequently asked questions about jDeploy