Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- plugins {
- id 'fabric-loom' version '1.8-SNAPSHOT'
- id 'maven-publish'
- id 'com.github.johnrengelman.shadow' version '7.1.2'
- }
- version = project.mod_version
- group = project.maven_group
- base {
- archivesName = project.archives_base_name
- }
- loom {
- splitEnvironmentSourceSets()
- mods {
- "streamtegration" {
- sourceSet sourceSets.main
- sourceSet sourceSets.client
- }
- }
- }
- repositories {
- // You can add additional repositories here if needed.
- }
- configurations {
- shadowImplementation {
- canBeResolved = true
- canBeConsumed = false
- }
- implementation.extendsFrom shadowImplementation
- }
- dependencies {
- // Minecraft and Fabric dependencies
- minecraft "com.mojang:minecraft:${project.minecraft_version}"
- mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
- modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
- modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
- // Google API dependencies added to shadowImplementation instead of implementation
- shadowImplementation 'com.google.api-client:google-api-client:1.34.1'
- shadowImplementation 'com.google.http-client:google-http-client-jackson2:1.34.1'
- shadowImplementation 'com.google.apis:google-api-services-youtube:v3-rev222-1.25.0'
- }
- // ShadowJar configuration
- shadowJar {
- configurations = [project.configurations.shadowImplementation]
- // Relocate only Google dependencies
- relocate 'com.google.api.client', 'com.datcodemania.streamtegration.shaded.google.api.client'
- relocate 'com.google.http.client', 'com.datcodemania.streamtegration.shaded.google.http.client'
- relocate 'com.google.apis', 'com.datcodemania.streamtegration.shaded.google.apis'
- // Prevent including any Minecraft or Fabric classes
- exclude 'net/minecraft/**'
- exclude 'net/fabricmc/**'
- }
- processResources {
- inputs.property "version", project.version
- inputs.property "minecraft_version", project.minecraft_version
- inputs.property "loader_version", project.loader_version
- filteringCharset "UTF-8"
- filesMatching("fabric.mod.json") {
- expand "version": project.version,
- "minecraft_version": project.minecraft_version,
- "loader_version": project.loader_version
- }
- }
- def targetJavaVersion = 17
- tasks.withType(JavaCompile).configureEach {
- it.options.encoding = "UTF-8"
- if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible()) {
- it.options.release.set(targetJavaVersion)
- }
- }
- java {
- def javaVersion = JavaVersion.toVersion(targetJavaVersion)
- if (JavaVersion.current() < javaVersion) {
- toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion)
- }
- withSourcesJar()
- }
- jar {
- from("LICENSE") {
- rename { "${it}_${project.archivesBaseName}" }
- }
- }
- publishing {
- publications {
- create("mavenJava", MavenPublication) {
- artifactId = project.archives_base_name
- from components.java
- }
- }
- repositories {
- // Define your publishing repositories here if needed.
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment