PlatformConfigKt.applyPlatformAndCoreConfiguration(project) PlatformConfigKt.applyShadowConfiguration(project) apply plugin: 'eclipse' apply plugin: 'net.minecraftforge.gradle' def minecraftVersion = "1.14.3" def forgeVersion = "27.0.13" configurations.all { Configuration it -> it.resolutionStrategy { ResolutionStrategy rs -> rs.force("com.google.guava:guava:21.0") } } dependencies { compile project(':worldedit-core') compile 'org.apache.logging.log4j:log4j-slf4j-impl:2.11.2' minecraft "net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}" testCompile group: 'org.mockito', name: 'mockito-core', version: '1.9.0-rc1' } sourceCompatibility = 1.8 targetCompatibility = 1.8 minecraft { mappings channel: 'snapshot', version: "20190626-${minecraftVersion}" runs { client = { // recommended logging data for a userdev environment properties 'forge.logging.markers': 'SCAN,REGISTRIES,REGISTRYDUMP' // recommended logging level for the console properties 'forge.logging.console.level': 'debug' workingDirectory project.file('run').canonicalPath source sourceSets.main } server = { // recommended logging data for a userdev environment properties 'forge.logging.markers': 'SCAN,REGISTRIES,REGISTRYDUMP' // recommended logging level for the console properties 'forge.logging.console.level': 'debug' workingDirectory project.file('run').canonicalPath source sourceSets.main } } } project.archivesBaseName = "${project.archivesBaseName}-mc${minecraftVersion}" processResources { // this will ensure that this task is redone when the versions change. inputs.property 'version', project.internalVersion inputs.property 'forgeVersion', forgeVersion // replace stuff in mcmod.info, nothing else from(sourceSets.main.resources.srcDirs) { include 'META-INF/mods.toml' // replace version and mcversion expand 'version': project.internalVersion, 'forgeVersion': forgeVersion } // copy everything else except the mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'META-INF/mods.toml' } } jar { manifest { attributes("WorldEdit-Version": version) } } shadowJar { dependencies { relocate "org.slf4j", "com.sk89q.worldedit.slf4j" relocate "org.apache.logging.slf4j", "com.sk89q.worldedit.log4jbridge" include(dependency('org.slf4j:slf4j-api')) include(dependency("org.apache.logging.log4j:log4j-slf4j-impl")) include(dependency("de.schlichtherle:truezip")) include(dependency("org.mozilla:rhino")) } } afterEvaluate { reobf { shadowJar { mappings = createMcpToSrg.output } } } task deobfJar(type: Jar) { from sourceSets.main.output getArchiveClassifier().set("dev") } artifacts { archives deobfJar }