Overview
jDeploy 5.0 represents a significant milestone in cross-platform Java desktop application deployment. Building on the existing ARM64 support for macOS, this release extends ARM64 architecture support to Windows and Linux, introduces powerful download page customization, implements comprehensive app permissions management, and provides seamless AI-powered setup through Claude Code integration.
What’s New in 5.0
Extended ARM64 Architecture Support
While jDeploy has supported macOS ARM64 (Apple Silicon) since previous versions, jDeploy 5.0 now brings native ARM64 support to Windows and Linux platforms. Your Java applications can now run natively on:
-
Windows ARM64 - Surface Pro X and other Windows ARM devices
-
Linux ARM64 - Raspberry Pi and other ARM-based Linux systems
-
macOS ARM64 - Continued support for Apple Silicon Macs (M1, M2, M3, etc.)
This expansion ensures optimal performance across all modern computing platforms, with both GUI and CLI deployed applications benefiting from native ARM64 execution.
Customizable Download Page Platforms
One of the most requested features, download page customization, is now available in jDeploy 5.0. You can now control exactly which platforms and architectures appear on your application’s download page.
Platform Selection Options
The new download page configuration offers three main options:
- All Platforms
-
Includes installers for every supported platform and architecture. As jDeploy adds support for new platforms, they automatically appear on your download page.
- Default Platforms
-
Uses jDeploy’s curated set of mainstream platforms. New architectures (like the Windows and Linux ARM64 builds introduced in 5.0) undergo a preview period before being included by default.
- Custom Selection
-
Gives you complete control over which specific platforms and architectures to offer your users.
Configuration Methods
You can configure platform selection either through the GUI’s new "Download Page" tab or directly in your package.json
:
{
"jdeploy": {
"downloadPage": {
"platforms": ["windows-x64", "windows-arm64", "mac-arm64", "linux-x64"]
}
}
}
This flexibility allows you to: * Focus on your primary user base * Gradually roll out support for new architectures * Reduce download page complexity for simple deployments

App Permissions System
jDeploy 5.0 introduces a cross-platform permissions abstraction that allows you to declare which system resources your application needs. Currently implemented for macOS with Windows and Linux support planned for future releases.
Supported Permissions
The permissions system supports all macOS permissions. Some examples include:
-
Camera access - For applications that need video capture
-
Microphone access - For audio recording applications
-
Location services - For location-aware applications
-
File system access - For applications that need broader file access
-
Network access - For applications requiring internet connectivity
-
Accessibility features - For assistive technology integration
Note
|
This is just a sample of available permissions. jDeploy 5.0 supports all macOS permission types. |
Permission Configuration
Permissions can be configured through the GUI’s new "Permissions" tab or directly in package.json
:
{
"jdeploy": {
"permissions": [
{
"name": "microphone",
"description": "Microphone access is required for audio recording features"
},
{
"name": "camera",
"description": "Camera access enables video conferencing capabilities"
}
]
}
}
Each permission requires a user-friendly description that explains why your application needs that specific access.

Claude Code Integration
Perhaps the most exciting addition to jDeploy 5.0 is the integration with Claude Code, Anthropic’s AI-powered development assistant. This integration dramatically simplifies the setup process for new users.
Streamlined Setup Process
Previously, setting up jDeploy required several manual steps: 1. Ensuring your project builds an executable JAR 2. Configuring the GitHub workflow 3. Tweaking build configurations
With Claude Code integration, the process becomes: 1. Import your project in jDeploy 2. Open Claude Code in your project 3. Say "Setup jDeploy for me"
Claude analyzes your project structure, identifies necessary changes, and handles the configuration automatically with your approval.
CLAUDE.md Integration
When you import a project, jDeploy now automatically creates or appends to your CLAUDE.md
file, providing Claude with the context needed to assist with jDeploy configuration. This makes the setup process accessible to developers of all experience levels.
For existing projects, you can add Claude integration through the project editor menu:

Enhanced Download Page Experience
The download page has been improved with automatic platform detection. Users now see a single, primary download button for their current platform, with other platforms accessible through an expandable "Other platforms" section.
This creates a cleaner, more intuitive download experience while still providing access to all supported platforms.


Technical Improvements
Complete Platform Matrix
jDeploy 5.0 now supports the following complete platform matrix:
-
Windows: x64, ARM64 (new)
-
macOS: x64 (Intel), ARM64 (Apple Silicon), Legacy (High Sierra compatible)
-
Linux: x64, ARM64 (new)
-
Debian: x64, ARM64 (new)
Configuration Schema Extensions
The package.json
configuration schema has been extended with new properties:
-
downloadPage
- Controls download page platform selection -
permissions
- Declares required system permissions -
Enhanced platform-specific JVM arguments with ARM64 support
Improved Build Process
The build process now efficiently handles multi-architecture compilation, automatically generating appropriate bundles for each target platform without requiring separate build environments.
Bug Fixes and Critical Improvements
Installation Experience Fixes
-
Linux Installer Permissions: Fixed critical issue where Linux installers weren’t executable, eliminating the need for users to manually run
chmod +x
-
Publish Target Conflicts: Resolved issue where changing from npm to GitHub publishing could cause conflicts with retained npm targets
Platform-Specific Improvements
-
Enhanced Windows ARM64 installer generation
-
Improved Linux package management integration
-
Better error handling for unsupported platform combinations
Migration Guide
Upgrading from 4.x
Existing jDeploy 4.x projects are fully compatible with 5.0. No configuration changes are required, though you may want to:
-
Enable ARM64 support: Update your download page settings to include the new Windows and Linux ARM64 builds
-
Configure permissions: If your application needs system resource access, declare these permissions for better user experience
-
Add Claude integration: Consider adding Claude Code integration for easier future configuration changes
Enabling New ARM64 Builds
To enable the new ARM64 builds for your existing application:
-
Open your project in the jDeploy GUI
-
Navigate to the "Download Page" tab
-
Select "All" platforms or customize your platform list to include ARM64 variants
-
Republish your application
Your users will immediately have access to native ARM64 installers on their download page.
Previewing ARM64 Builds
You can preview the new ARM64 builds for your existing application without creating a new release by adding ?preview=1
to your download page URL. For example:
This allows you to test the new ARM64 installers before making them available to all users.
Installer Naming Convention Changes
jDeploy 5.0 introduces new naming conventions for Windows and Linux installers to accommodate the new ARM64 architecture support:
- Previous naming (x86_64 only)
-
-
Windows:
My App Installer-win-1.0.0.exe
-
Linux:
My App Installer-linux-1.0.0.gz
-
- New naming (with architecture)
-
-
Windows x64:
My App Installer-win-x64-1.0.0.exe
-
Windows ARM64:
My App Installer-win-arm64-1.0.0.exe
-
Linux x64:
My App Installer-linux-x64-1.0.0.tar.gz
-
Linux ARM64:
My App Installer-linux-arm64-1.0.0.tar.gz
-
Backward Compatibility
To ensure existing automations and integrations continue working, jDeploy 5.0 generates duplicate installers for Windows and Linux x86_64 builds:
-
One with the legacy naming convention (e.g.,
-win-1.0.0
) -
One with the new architecture-specific naming (e.g.,
-win-x64-1.0.0
)
Additionally, Linux installers now use .tar.gz
compression instead of .gz
to properly preserve file permissions.
Disabling Legacy Bundle Generation
If you don’t need the duplicate legacy-named bundles, you can disable them by adding the following to your package.json
:
{
"jdeploy": {
"generateLegacyBundles": false
}
}
This will generate only the new architecture-specific naming convention.
Note
|
A future version of jDeploy will stop generating duplicate legacy bundles by default. |
Getting Started with 5.0
If you’re new to jDeploy, the 5.0 release offers the smoothest onboarding experience yet:
-
Download jDeploy from the GitHub releases page
-
Import your existing project or create a new one from templates
-
Let Claude Code handle the setup by simply asking it to "Setup jDeploy for me"
-
Configure your platforms and permissions using the enhanced GUI
-
Publish and share your download page with users across all platforms
Performance Benefits
Native ARM64 Performance
Applications running on ARM64 architectures see significant performance improvements:
-
Better energy efficiency on ARM-based devices
-
Improved execution speed for ARM-optimized workloads
-
Enhanced compatibility with modern ARM-based development environments
Streamlined Development Workflow
The Claude Code integration reduces setup time from hours to minutes, allowing developers to focus on application development rather than deployment configuration.
Looking Forward
jDeploy 5.0 establishes a strong foundation for future enhancements. Upcoming features include:
-
Extended permissions support for Windows and Linux
-
Additional installer formats for specialized Linux distributions
-
Enhanced GitHub Actions integration with more trigger options
-
Expanded template library for popular Java frameworks
-
Integration with additional AI development assistants
Resources and Support
-
Official Website: https://www.jdeploy.com/
-
Download jDeploy: https://github.com/shannah/jdeploy-desktop-gui/releases/tag/master
-
Documentation: https://www.jdeploy.com/docs/manual/
-
GitHub Repository: https://github.com/shannah/jdeploy
-
Community Support: GitHub Issues and Discussions
Conclusion
jDeploy 5.0 represents our commitment to making Java desktop application deployment accessible, powerful, and future-ready. With expanded ARM64 support, intelligent setup assistance, and enhanced customization options, developers can now reach users on every modern platform with confidence.
Whether you’re a solo developer publishing your first desktop app or an enterprise team managing complex deployment pipelines, jDeploy 5.0 provides the tools, flexibility, and guidance you need to succeed in today’s diverse computing landscape.
Ready to get started? Download jDeploy 5.0 today and experience the future of Java desktop application deployment.