Multi-OS Engine: Create iOS Apps in Java (or Kotlin ... etc.)

Multi-OS Engine


Multi-OS Engine provides a Java runtime and Java interfaces to iOS platform API to develop native iOS applications with native look and feel, native performance, and portability of common Java logic modules from your Android Apps. It comes fully integrated with Android Studio hosted on macOS or Windows and contains all the development tools needed to develop an iOS app and publish to the App Store.

Getting Started

Building from Source Code


  • Apple macOS 10.11
  • Minimum 8GB RAM

Install the 'repo' Tool

mkdir ~/bin
curl > ~/bin/repo
chmod a+x ~/bin/repo

You may also install the repo using brew:

brew install repo

Get the Source Code

Mainline branch:

repo init -u
repo sync

Note: if you want to get the source code from development branch with initial support of Windows and bitcode, switch to "moe-windows-bitcode" branch:

repo init -u -b moe-windows-bitcode
repo sync

Installing Homebrew & Dependencies

Install brew from, then you can install MOE's dependencies:

brew tap homebrew/versions
brew install autogen autoconf automake libtool pkg-config wget [email protected] cloog cmake jasmin gpg ant maven

cd <repo>/moe/moe-core
brew install file://`pwd`/dependencies/premake5.rb

Building MinGW & LLVM

Building the complete SDK and related tools requires LLVM and MinGW. To build these execute the following:

cd <repo>/prebuilts
./gradlew mingw llvm

This step only needs to be done once (or until MinGW or LLVM components/requirements are changed).

Building Multi-OS Engine Core

The moe/moe-core repo contains the runtime (and some compile time) components of MOE. To build the frameworks and build tools, execute the following:

cd <repo>/moe/moe-core
./gradlew build

Building Multi-OS Engine Tools

The moe/tools repositories contain the tools required to build and run MOE applications.

SDK Publisher: creating a developer SDK:

cd <repo>/moe/tools/master
./gradlew :moe-sdk:devsdk

Gradle Plugin: building and publishing the Gradle plugin to Maven local:

cd <repo>/moe/tools/master
./gradlew :moe-gradle:publishToMavenLocal

Maven Plugin: building and publishing the Maven plugin to Maven local:

cd <repo>/moe/tools/moe.plugin.maven
mvn clean install

IDEA Plugin: building the IDEA plugin:

cd <repo>/moe/tools/master
./gradlew :moe.plugin.idea:build

Eclipse Plugin: building the Eclipse plugin:

cd <repo>/moe/tools/moe.plugin.eclipse
mvn clean install -DBUILD_NUMBER=1

Related Repositories



:video_game: A list of popular/awesome videos games, add-ons, maps, etc. hosted ...



This is free 2d game development framework(Java Game Engine), support JavaSE/And ...



Multi Theft Auto is an open-source game engine that adds full multiplayer networ ...



A guide to concurrency, multi-threading and parallel programming concepts. Expla ...



:video_game: A list of popular/awesome videos games, add-ons, maps, etc. hosted ...