/* * Add your dependencies here. Supported configurations: * - api("group:name:version:classifier"): if you use the types from this dependency in the public API of this mod * Available at runtime and compiletime for mods depending on this mod * - implementation("g:n:v:c"): if you need this for internal implementation details of the mod, but none of it is visible via the public API * Available at runtime but not compiletime for mods depending on this mod * - compileOnly("g:n:v:c"): if the mod you're building doesn't need this dependency during runtime at all, e.g. for optional mods * Not available at all for mods depending on this mod, only visible at compiletime for this mod * - compileOnlyApi("g:n:v:c"): like compileOnly, but also visible at compiletime for mods depending on this mod * Available at compiletime but not runtime for mods depending on this mod * - runtimeOnlyNonPublishable("g:n:v:c"): if you want to include a mod in this mod's runClient/runServer runs, but not publish it as a dependency * Not available at all for mods depending on this mod, only visible at runtime for this mod * - devOnlyNonPublishable("g:n:v:c"): a combination of runtimeOnlyNonPublishable and compileOnly for dependencies present at both compiletime and runtime, * but not published as Maven dependencies - useful for RFG-deobfuscated dependencies or local testing * - runtimeOnly("g:n:v:c"): if you don't need this at compile time, but want it to be present at runtime * Available at runtime for mods depending on this mod * - annotationProcessor("g:n:v:c"): mostly for java compiler plugins, if you know you need this, use it, otherwise don't worry * - testCONFIG("g:n:v:c") - replace CONFIG by one of the above (except api), same as above but for the test sources instead of main * * - shadowImplementation("g:n:v:c"): effectively the same as API, but the dependency is included in your jar under a renamed package name * Requires you to enable usesShadowedDependencies in gradle.properties * * - compile("g:n:v:c"): deprecated, replace with "api" (works like the old "compile") or "implementation" (can be more efficient) * * You can exclude transitive dependencies (dependencies of the chosen dependency) by appending { transitive = false } if needed, * but use this sparingly as it can break using your mod as another mod's dependency if you're not careful. * * To depend on obfuscated jars you can use `devOnlyNonPublishable(rfg.deobf("dep:spec:1.2.3"))` to fetch an obfuscated jar from maven, * or `devOnlyNonPublishable(rfg.deobf(project.files("libs/my-mod-jar.jar")))` to use a file. * * Gradle names for some of the configuration can be misleading, compileOnlyApi and runtimeOnly both get published as dependencies in Maven, but compileOnly does not. * The buildscript adds runtimeOnlyNonPublishable to also have a runtime dependency that's not published. * * For more details, see https://docs.gradle.org/8.0.1/userguide/java_library_plugin.html#sec:java_library_configurations_graph */ dependencies { api("com.github.GTNewHorizons:StructureLib:1.3.0:dev") api("net.industrial-craft:industrialcraft-2:2.2.828-experimental:dev") api("com.github.GTNewHorizons:NotEnoughItems:2.5.3-GTNH:dev") api("com.github.GTNewHorizons:GTNHLib:0.0.13:dev") api("com.github.GTNewHorizons:ModularUI:1.1.24:dev") api("com.github.GTNewHorizons:waila:1.6.5:dev") api("com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-310-GTNH:dev") api("com.github.GTNewHorizons:AE2FluidCraft-Rework:1.2.8-gtnh:dev") implementation("com.github.GTNewHorizons:Avaritia:1.48:dev") compileOnlyApi("com.github.GTNewHorizons:AppleCore:3.2.12:dev") { transitive = false } compileOnlyApi("com.github.GTNewHorizons:BuildCraft:7.1.38:dev") { transitive = false } compileOnlyApi("com.github.GTNewHorizons:EnderIO:2.6.1:dev") { transitive = false } compileOnlyApi("com.github.GTNewHorizons:ProjectRed:4.9.1-GTNH:dev") { transitive = false } compileOnlyApi("com.github.GTNewHorizons:ForestryMC:4.8.2:dev") { transitive = false } compileOnlyApi("com.github.GTNewHorizons:Railcraft:9.15.3:dev") { transitive = false } compileOnly("com.github.GTNewHorizons:EnderCore:0.3.0:dev") { transitive = false } compileOnly("com.github.GTNewHorizons:Galacticraft:3.1.1-GTNH:dev") { transitive = false } compileOnly("com.github.GTNewHorizons:TinkersConstruct:1.11.5-GTNH:dev") { transitive = false } compileOnly("com.github.GTNewHorizons:Chisel:2.13.2-GTNH:dev") { transitive = false } compileOnly("com.github.GTNewHorizons:Translocators:1.2.0:dev") { transitive = false } compileOnly("curse.maven:cofh-core-69162:2388751") { transitive = false } compileOnly("com.github.GTNewHorizons:Nuclear-Control:2.6.0:dev") { transitive = false } compileOnly("thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev") { transitive = false } compileOnly("com.github.GTNewHorizons:Hodgepodge:2.4.8:dev") { transitive = false } compileOnly('com.github.GTNewHorizons:Botania:1.10.3-GTNH:dev') { transitive = false } compileOnly('com.github.GTNewHorizons:HoloInventory:2.3.2-GTNH:dev') { transitive = false } compileOnly('curse.maven:minefactory-reloaded-66672:2366150') { transitive = false } compileOnly("com.google.auto.value:auto-value-annotations:1.10.1") { transitive = false } annotationProcessor("com.google.auto.value:auto-value:1.10.1") // For testing iApiary //runtimeOnlyNonPublishable("com.github.GTNewHorizons:ForestryMC:4.8.2:dev") testImplementation(platform('org.junit:junit-bom:5.9.2')) testImplementation('org.junit.jupiter:junit-jupiter') testImplementation("org.mockito:mockito-core:3.+") functionalTestImplementation(platform('org.junit:junit-bom:5.9.2')) functionalTestImplementation('org.junit.jupiter:junit-jupiter') functionalTestImplementation('org.junit.platform:junit-platform-engine') functionalTestImplementation('org.junit.platform:junit-platform-launcher') functionalTestImplementation('org.junit.platform:junit-platform-reporting') runtimeOnlyNonPublishable("com.github.GTNewHorizons:DuraDisplay:1.1.7:dev") }