Gluon Launches Community Drive to Bring Java to iOS Through OpenJDK Mobile Project
Share this article
Gluon Launches Community Drive to Bring Java to iOS Through OpenJDK Mobile Project
For years, Java's presence on mobile devices has been synonymous with Android, while iOS remained largely inaccessible to standard JVM workloads. Now, Gluon is spearheading a community effort to change that reality through the newly launched OpenJDK Mobile project, aiming to transform OpenJDK builds into runnable iOS applications.
The Mobile Gap
While the OpenJDK Mobile project successfully compiles Java for iOS, a significant deployment gap persists. As Gluon co-founder Johan Vos noted in an OpenJDK mailing list announcement:
"There is still a significant gap between a platform-specific build of OpenJDK and a Java-based application running on that platform."
This initiative addresses that disconnect through automation and community collaboration—positioning itself as complementary rather than competitive with core OpenJDK efforts.
Automation Pipeline
The project introduces several key components:
- GitHub Actions Automation: Scripts in the
ios-toolsrepository automate:- Building libffi for iOS
- Compiling OpenJDK for iOS targets
- Generating Xcode frameworks from OpenJDK artifacts
- Nightly Builds: Continuous integration detects regressions immediately
- Artifact Availability: Pre-built components or source-based builds
"Maintainability is key," emphasizes Vos. The pipeline ensures the latest OpenJDK Mobile commits remain functional on iOS without version-specific patches.
Current Status & Roadmap
The project has cleared its first major hurdle: HelloWorld Java applications now run on physical iOS devices using the Zero interpreter. Next phases include:
- Performance Enhancements: Integration with Project Leyden for AOT compilation
- JavaFX Support: Reintroducing mobile UI capabilities without proprietary patches
- Library Conversion: Annotations to expose Java methods in native frameworks
- Android Pipeline: Replicating the iOS automation for Android (simplified by JIT support)
- iOS Simulator Compatibility: Critical for developer testing workflows
Why This Matters
Java's "write once, run anywhere" promise has historically stumbled on iOS. This community-driven effort could finally deliver true cross-platform parity. Crucially, Gluon rejects shortcuts:
"I don't want any mobile-specific patch in JavaFX that is not 100% understood and justified."
The approach prioritizes sustainable maintenance over quick fixes—a philosophy that could determine Java's longevity in mobile ecosystems.
The Path Forward
While resources pale compared to Java's cloud-focused investments, Vos remains optimistic:
"No miracle is needed to run Java as a first-class citizen on mobile platforms. Java was designed to do this job."
With nightly builds providing immediate feedback loops and clear documentation lowering contribution barriers, the project invites broader collaboration. As automation solidifies and JavaFX support materializes, iOS may soon join Android as a fully supported Java target—no miracles required.
Source: Johan Vos's announcement on OpenJDK mobile-dev mailing list