a java version of my mod SpecialWorks, this soon will become the main version with the same
- Building for Desktop Testing
- Install JDK 16.
- Run
gradlew jar
[1]. - Your mod jar will be in the
build/libs
directory. Only use this version for testing on desktop. It will not work with Android. To build an Android-compatible version, you need the Android SDK. You can either let Github Actions handle this, or set it up yourself. See steps below.
- Building through Github Actions
This repository is set up with Github Actions CI to automatically build the mod for you every commit. This requires a Github repository, for obvious reasons. To get a jar file that works for every platform, do the following:
- Make a Github repository with your mod name, and upload the contents of this repo to it. Perform any modifications necessary, then commit and push.
- Check the "Actions" tab on your repository page. Select the most recent commit in the list. If it completed successfully, there should be a download link under the "Artifacts" section.
- Click the download link (should be the name of your repo). This will download a zipped jar - not the jar file itself [2]! Unzip this file and import the jar contained within in Mindustry. This version should work both on Android and Desktop.
- Building Locally
Building locally takes more time to set up, but shouldn't be a problem if you've done Android development before.
- Download the Android SDK, unzip it and set the
ANDROID_HOME
environment variable to its location. - Make sure you have API level 30 installed, as well as any recent version of build tools (e.g. 30.0.1)
- Add a build-tools folder to your PATH. For spec, if you have
30.0.1
installed, that would be$ANDROID_HOME/build-tools/30.0.1
. - Run
gradlew deploy
. If you did everything correctlly, this will create a jar file in thebuild/libs
directory that can be run on both Android and desktop.
[1] On Linux/Mac it's ./gradlew
, but if you're using Linux I assume you know how to run executables properly anyway.
[2]: Yes, I know this is stupid. It's a Github UI limitation - while the jar itself is uploaded unzipped, there is currently no way to download it as a single file.