MobiVM is an ahead-of-time compiler for Java bytecode, targeting iOS, macOS and Linux. This implies that no interpretation is ever done and the code is run natively on the target CPU.

Star Fork

Open Source

MobiVM compile tools are licensed under GPLv3 and runtime code under Apache 2 for distribution on iOS.

Top Performance

MobiVM is well optimized for class performance and small binaries sizes.

IDE Support

Plugin integration with IntelliJ IDEA, Android Studio and Eclipse.

Active Community

Get support from a very welcoming community of game and application developers.

Interface Builder

Interface Builder integration is also available. Check out the wiki for more details.

Debugger Support

Debugger support (that was only available with a commercial license) has been added (thanks to @dkmitsa).


How does it work?

How does it work?

MobiVM translates Java bytecode into LLVM IR as an intermediate representation, which is later compiled into native code for the targeted platform. This approach allows you to use any widely available codebase from the Java ecosystem at native platform speed. As MobiVM builds upon the Java platform, any JVM language can be used, for example Java, Kotlin or DukeScript. The built-in tree shaker effectively drops classes which are not used within the code path and allows us to keep the binary footprint at a minimum.

Gitter

The MobiVM Community

MobiVM has a very active community on various platforms, including Gitter and GitHub Discussions. If you are looking for a place to start and connect with like-minded people, our official Gitter room is most definitely the right place.

Check it out