robovm
aot
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
robovm
- MobiVM, ahead-of-time compiler for Java bytecode, targeting iOS, macOS and Linux
-
Backward Compatibility, Go 1.21, and Go 2
Naturally depends on the use case, yet they work good enough to be in business for 20 years.
https://www.ptc.com/en/products/developer-tools/perc
https://www.aicas.com/wp/products-services/jamaicavm-tools/
https://www.codenameone.com/
Android 5 & 6 (only changed back into JIT/AOT due to long compile times), https://www.infoq.com/news/2014/07/art-runtime/
Unfortunely the best well known, Excelsior JET, is no longer in business, most likely due to GraalVM and OpenJ9 being available as free beer, while PTC, Aicas Codename One are safe in their domains.
There is also RoboVM (https://github.com/MobiVM/robovm) as free beer, however it actually started as a commercial product, and the acquisition from Xamarin kind of stagnated it (naturally).
-
Options for targeting ios with Java
I think libGDX still uses RoboVM, but I’m not sure if it’s being actively developed anymore.
-
Specific libraries java-flutter
For iOS the RoboVM project intends to be an AOT compiler for Java bytecode.
- Jetpack Compose announced for Web Development
-
Kotlin from zero with no previous programming experience
Kotlin is not ideal for iOS development afaik (maybe with RoboVM). With regards to Android development, it is perfect. For desktop applications it's good, there are always tradeoffs here. With regards to payment, I believe it is generally the case that you're paid more the harder the language is to learn (so C > C# > Python). This also affects how much people are looking for a certain kind of developer - there are more JS jobs than jobs requiring a C++ developer. Kotlin is a good choice to start though. It's not too complicated, it's not so simple that it's limiting you somehow, it's not too slow for most applications (+ it supports native somewhat) and it has a good environment with stable libraries you can rely on.
-
Sorry Java, Write Once Run Anywhere (WORA) Is Now JavaScript
Yes, these are the native code compilers for Java, able to target Apple mobile platforms.
https://www.codenameone.com/
https://gluonhq.com/products/mobile/
https://github.com/MobiVM/robovm
aot
What are some alternatives?
JaCoCo - :microscope: Java Code Coverage Library
Cosmic-IDE - A next-gen Ide for JVM development on Android
JByteMod-Beta - Java bytecode editor
jtransc - Bytecode to source converting Java & Kotlin code into JavaScript, C++, D, C#, PHP, AS3, Dart and Haxe and run it everywhere. Also use JVM code in your favourite language as a library.
Codename One - Cross-platform framework for building truly native mobile apps with Java or Kotlin. Write Once Run Anywhere support for iOS, Android, Desktop & Web.
Paguro - Generic, Null-safe, Immutable Collections and Functional Transformations for the JVM
proguard-core - Library to read, write, analyze, and process java bytecode
londogard-nlp-toolkit - Londogard Natural Language Processing Toolkit written in Kotlin
ComposeClock - Particle clock created with Jetpack Compose framework
mycompany - ERP-system for small businesses
libGDX - Desktop/Android/HTML5/iOS Java game development framework
FXGL - Java / JavaFX / Kotlin Game Library (Engine)