ett förslag som flyter i OpenJDK-communityn försöker starta Java på Apples iOS. Planen innebär att starta om arbetet med OpenJDK Mobile-projektet, som är avsett att bygga OpenJDK-klasserna och API för iOS och Android, säger Johan Vos, CTO på mobilutvecklaren Gluon.
Vos publicerade nyligen en bulletin om dessa ansträngningar. OpenJDK Mobile handlar om att tillhandahålla samma API: er i den senaste versionen av OpenJDK source repository till iOS och Android, utnyttja verktyg som är bekanta för Java-utvecklare. Det första fokuset är dock på iOS, som har saknat traditionellt stöd för Java. Apple har inte tillåtit Java Virtual Machine att köras på plattformen.
den nya planen för OpenJDK Mobile skulle innebära att man använder GraalVM ahead-of-time-kompilatorn för att kompilera kod vid byggtid. (Vos noterade att just-in-time-kompilering inte är ett alternativ på iOS.) Kompilerad Java-kod kan sedan kopplas till inbyggda bibliotek som sammanställts för måloperativsystemet för att skapa körbara filer. Detta har redan gjorts för iOS, baserat på Java 11. Med hjälp av GraalVM-inbyggda bilder och OpenJDK-klasser kan utvecklare skapa applikationer som följer Apples regler. Java-utvecklare behöver inte lära sig Objective-C eller Swift för att skriva programvara för iOS.
” medan Java kan vara sent i spelet på mobilen, det faktum att det är plattformsoberoende, skapad med säkerhet som en viktig hörnsten, och att det möjliggör säker anslutning med molntjänster, gör det till en verklig allvarlig språk för mobil utveckling, ” vos sa.
Java har använts för Android utveckling från början. Android är dock inte Java 11-kompatibel och kräver sitt eget utvecklingsverktyg – Android Studio – och procedurer, sa Vos. Många utvecklare står inför allvarliga problem med Java-projekt och bibliotek på Android, sa han.
en del av planen är också en synkroniserad gaffel av OpenJDK-mästaren, som skulle skapas med Project Skara. Ett Skara-baserat arkiv skulle utnyttjas för att bygga OpenJDK för iOS och Android.
att föra Java till iOS har varit målet för flera projekt under det senaste decenniet. Andra ansträngningar inkluderade gluons egen Eclipse plug-in och det nu nedlagda RoboVM-verktyget.