pluginManagement { // Default plugin versions so submodules can use 'id' without specifying version. // The gtnhconvention plugin (and its bundled RetroFuturaGradle) is resolved here once // so all submodules share the same classloader — required by Gradle build services. plugins { id 'com.gtnewhorizons.gtnhconvention' version '1.0.27' } repositories { maven { url "https://jitpack.io"} maven { // RetroFuturaGradle name "GTNH Maven" url "https://nexus.gtnewhorizons.com/repository/public/" mavenContent { includeGroup("com.gtnewhorizons") includeGroupByRegex("com\\.gtnewhorizons\\..+") } } gradlePluginPortal() mavenCentral() mavenLocal() } } // Load the GTNH convention plugin into the settings classloader so all submodules // share the same RetroFuturaGradle classes (required for Gradle build services). buildscript { repositories { maven { name "GTNH Maven" url "https://nexus.gtnewhorizons.com/repository/public/" } gradlePluginPortal() mavenCentral() } dependencies { classpath 'com.gtnewhorizons:gtnhgradle:1.0.27' } } // Include the local gradle-plugins composite build so plugin is resolved locally includeBuild 'gradle-plugins' // CNPC+ Multi-Version Build Structure // - platform-api: MC-free interfaces (plain Java 8 library) // - core: MC-free game logic (plain Java 8 library, depends on platform-api) // - mc1710: Minecraft 1.7.10 module (Forge mod, depends on core) // - mc1122: Minecraft 1.12.2 module (Forge mod, depends on core) include 'platform-api', 'core', 'mc1710', 'mc1122'