Une proposition flottant dans la communauté OpenJDK cherche à relancer Java sur iOS d’Apple. Le plan implique de redémarrer le travail sur le projet mobile OpenJDK, qui vise à construire les classes et l’API OpenJDK pour iOS et Android, a déclaré Johan Vos, directeur technique chez le développeur mobile Gluon.
Vos a récemment publié un bulletin sur ces efforts. OpenJDK Mobile se concentre sur la fourniture des mêmes API dans la dernière version du référentiel source OpenJDK pour iOS et Android, en exploitant des outils familiers aux développeurs Java. Le premier accent, cependant, est sur iOS, qui a manqué de support traditionnel pour Java. Apple n’a pas autorisé la machine virtuelle Java à s’exécuter sur la plate-forme.
Le nouveau plan pour OpenJDK Mobile impliquerait d’utiliser le compilateur GraalVM à l’avance pour compiler du code au moment de la construction. (Vos a noté que la compilation juste à temps n’est pas une option sur iOS.) Le code Java compilé pourrait ensuite être lié à des bibliothèques natives compilées pour le système d’exploitation cible afin de créer des exécutables. Cela a déjà été fait pour iOS, basé sur Java 11. En utilisant les images natives GraalVM et les classes OpenJDK, les développeurs peuvent créer des applications qui suivent les règles Apple. Les développeurs Java n’auraient pas à apprendre Objective-C ou Swift pour écrire des logiciels pour iOS.
« Bien que Java soit peut-être en retard dans le jeu sur mobile, le fait qu’il soit multiplateforme, créé avec la sécurité comme pierre angulaire, et qu’il permette une connectivité sécurisée avec les services cloud, en font un véritable langage sérieux pour le développement mobile », a déclaré Vos.
Java a été utilisé pour le développement Android depuis le début. Cependant, Android n’est pas compatible avec Java 11 et nécessite son propre outil de développement – Android Studio – et des procédures, a déclaré Vos. De nombreux développeurs sont confrontés à de graves problèmes d’utilisation de projets Java et de bibliothèques sur Android, a-t-il déclaré.
Fait également partie du plan un fork synchronisé du maître OpenJDK, qui serait créé à l’aide du projet Skara. Un référentiel basé sur Skara serait utilisé pour créer OpenJDK pour iOS et Android.
Apporter Java à iOS a été l’objectif de plusieurs projets au cours de la dernière décennie. D’autres efforts comprenaient le propre plug-in Eclipse de Gluon et l’outil RoboVM aujourd’hui disparu.