Skip to main content

Requirements

Before installing Space Birds, ensure you have the following prerequisites:

Core Requirements

  • Java Development Kit (JDK) 8 or higher
    • The project uses Java source and target compatibility version 8
    • JDK 9+ is fully supported with release flag set to 8
  • Gradle (included via wrapper)
    • The project includes Gradle wrapper scripts (gradlew / gradlew.bat)
    • No separate Gradle installation required

Platform-Specific Requirements

No additional requirements beyond the JDK. The LWJGL3 backend will run on:
  • Linux (x64, ARM32, ARM64)
  • macOS (x64, Apple Silicon M1/M2)
  • Windows (x86, x64)

Clone the Repository

1

Clone the source code

git clone <repository-url>
cd SpaceEscape_AULA
2

Verify project structure

Ensure the following directories exist:
SpaceEscape_AULA/
├── core/          # Shared game logic
├── lwjgl3/        # Desktop platform
├── android/       # Android platform
├── assets/        # Game assets
└── build.gradle   # Root build file

Gradle Setup

The project uses Gradle with a wrapper, so no manual Gradle installation is needed.

Make Gradle Wrapper Executable

On Linux/macOS, make the wrapper script executable:
chmod +x gradlew

Gradle Configuration

The project includes optimized Gradle settings in gradle.properties:
  • Daemon: Disabled by default to conserve RAM
  • JVM Args: -Xms512M -Xmx1G (512MB initial, 1GB max heap)
  • Encoding: UTF-8 for files and console
  • libGDX Version: 1.14.0

Building the Project

Build All Platforms

To build sources and archives for all platforms:
./gradlew build
The build task compiles all subprojects (core, lwjgl3, android) and creates archives.

Build Desktop JAR

1

Build runnable JAR

./gradlew lwjgl3:jar
The JAR will be located at lwjgl3/build/libs/SpaceEscape_AULA-1.0.0.jar
2

Build platform-specific JARs (optional)

For smaller file sizes, build platform-specific JARs:
./gradlew jarMac
Platform-specific JARs are 5-7MB smaller than cross-platform builds.

Build Android APK

1

Set up Android SDK path

Create local.properties in the project root:
sdk.dir=/path/to/android-sdk
Or set the environment variable:
export ANDROID_SDK_ROOT=/path/to/android-sdk
2

Build debug APK

./gradlew android:assembleDebug
The APK will be in android/build/outputs/apk/debug/
3

Build release APK

./gradlew android:assembleRelease
Release builds have ProGuard minification enabled. Ensure you have signing keys configured.

IDE Setup

IntelliJ IDEA

./gradlew idea
This generates IntelliJ project files. Then open the project in IntelliJ IDEA.
The project is configured to “Build and run using IntelliJ IDEA” (check Settings).

Eclipse

./gradlew eclipse
This generates Eclipse project files. Then import the project into Eclipse.

Clean IDE Data

To remove generated IDE files:
./gradlew cleanIdea

Useful Gradle Tasks

Here are commonly used Gradle tasks for Space Birds:
TaskDescription
./gradlew buildBuilds sources and archives for all platforms
./gradlew cleanRemoves build folders with compiled classes
./gradlew lwjgl3:runRuns the desktop version
./gradlew lwjgl3:jarCreates runnable JAR at lwjgl3/build/libs
./gradlew android:assembleDebugBuilds Android debug APK
./gradlew android:lintPerforms Android project validation
./gradlew testRuns unit tests

Gradle Flags

  • --daemon - Uses Gradle daemon for faster builds
  • --offline - Uses cached dependencies (no network)
  • --refresh-dependencies - Forces dependency validation
  • --continue - Continues execution after errors

Troubleshooting

Gradle Permission Denied

If you get permission errors on Linux/macOS:
chmod +x gradlew

Android SDK Not Found

Ensure ANDROID_SDK_ROOT is set or local.properties exists with sdk.dir.

Out of Memory Errors

Increase Gradle heap size in gradle.properties:
org.gradle.jvmargs=-Xms512M -Xmx2G

Build Cache Issues

Clean and rebuild:
./gradlew clean build --refresh-dependencies

Next Steps

Now that you have Space Birds installed, proceed to the Quickstart Guide to run the game.

Build docs developers (and LLMs) love