subprojects { apply plugin: 'java' java.toolchain.languageVersion = JavaLanguageVersion.of(17) java.withSourcesJar() java.withJavadocJar() jar { from(rootProject.file("LICENSE")) { rename { "${it}_${mod_name}" } } manifest { attributes([ 'Specification-Title' : mod_name, 'Specification-Vendor' : mod_author, 'Specification-Version' : project.jar.archiveVersion, 'Implementation-Title' : project.name, 'Implementation-Version' : project.jar.archiveVersion, 'Implementation-Vendor' : mod_author, 'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), 'Timestamp' : System.currentTimeMillis(), 'Built-On-Java' : "${System.getProperty('java.vm.version')} (${System.getProperty('java.vm.vendor')})", 'Built-On-Minecraft' : minecraft_version ]) } } sourcesJar { from(rootProject.file("LICENSE")) { rename { "${it}_${mod_name}" } } } repositories { mavenCentral() maven { name = 'Sponge / Mixin' url = 'https://repo.spongepowered.org/repository/maven-public/' } maven { name = 'BlameJared Maven (CrT / Bookshelf)' url = 'https://maven.blamejared.com' } maven { url 'https://squiddev.cc/maven/' } maven { url "https://cursemaven.com"} } tasks.withType(JavaCompile).configureEach { it.options.encoding = 'UTF-8' it.options.release = 17 } // Disables Gradle's custom module metadata from being published to maven. The // metadata includes mapped dependencies which are not reasonably consumable by // other mod developers. tasks.withType(GenerateModuleMetadata) { enabled = false } }