plugins { id 'java' id 'org.spongepowered.gradle.vanilla' version '0.2.1-SNAPSHOT' id 'maven-publish' id 'com.github.johnrengelman.shadow' version '7.0.0' } archivesBaseName = "${mod_name}-common-${minecraft_version}" minecraft { accessWideners(project.file("src/main/resources/craterlib.aw")) version(minecraft_version) runs { if (project.hasProperty('common_runs_enabled') ? project.findProperty('common_runs_enabled').toBoolean() : true) { server(project.hasProperty('common_server_run_name') ? project.findProperty('common_server_run_name') : 'vanilla_server') { workingDirectory(this.file("run")) } client(project.hasProperty('common_client_run_name') ? project.findProperty('common_client_run_name') : 'vanilla_client') { workingDirectory(this.file("run")) } } } } dependencies { compileOnly group: 'org.spongepowered', name: 'mixin', version: '0.8.5' } processResources { def buildProps = project.properties.clone() filesMatching(['pack.mcmeta']) { expand buildProps } } shadowJar { dependencies { include(dependency("me.hypherionmc.moon-config:core:${moon_config}")) include(dependency("me.hypherionmc.moon-config:toml:${moon_config}")) relocate 'me.hypherionmc.moonconfig', 'shadow.hypherionmc.moonconfig' } classifier '' } build.dependsOn shadowJar reg.configureJarTask(shadowJar) publishing { publications { mavenJava(MavenPublication) { groupId project.group artifactId project.archivesBaseName version project.version from components.java pom.withXml { Node pomNode = asNode() pomNode.dependencies.'*'.findAll() { it.artifactId.text() == 'regutils-joined-fabric' || it.artifactId.text() == 'core' || it.artifactId.text() == 'toml' }.each() { it.parent().remove(it) } } } } repositories { maven { url "https://maven.firstdarkdev.xyz/" + (project.release ? "snapshots" : "releases") credentials { username System.getenv("MAVEN_USER") password System.getenv("MAVEN_PASS") } } } }