fabric-loom/build.gradle

119 lines
2.4 KiB
Groovy

plugins {
id 'java'
id 'maven-publish'
id 'java-gradle-plugin'
id 'idea'
id 'eclipse'
id 'groovy'
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
group = 'net.fabricmc'
archivesBaseName = project.name
version = '0.2.5-SNAPSHOT'
def build = "local"
def ENV = System.getenv()
if (ENV.BUILD_NUMBER) {
build = "jenkins #${ENV.BUILD_NUMBER}"
}
repositories {
mavenCentral()
maven {
name = "Fabric"
url = 'https://maven.fabricmc.net/'
}
}
dependencies {
implementation gradleApi()
// libraries
implementation ('commons-io:commons-io:2.6')
implementation ('org.zeroturnaround:zt-zip:1.13')
implementation ('com.google.code.gson:gson:2.8.5')
implementation ('com.google.guava:guava:28.0-jre')
// game handling utils
implementation ('net.fabricmc:stitch:0.2.1.60') {
exclude module: 'enigma'
}
// tinyfile management
implementation ('net.fabricmc:tiny-remapper:0.1.0.38') {
transitive = false
}
implementation ('net.fabricmc:fabric-mixin-compile-extensions:0.1.0.+')
// decompilers
implementation ('net.fabricmc:procyon-fabric-compilertools:0.5.35.+')
implementation ('org.jetbrains:intellij-fernflower:1.0.0.9')
// source code remapping
implementation ('org.cadixdev:mercury:0.1.0.fabric-SNAPSHOT')
// Testing
testImplementation(gradleTestKit())
testImplementation("org.spockframework:spock-core:1.3-groovy-2.4")
}
jar {
manifest {
attributes 'Implementation-Version': version + " Build(" + build + ")"
}
}
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.main.allSource
}
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
apply from: 'https://github.com/FabricMC/fabric-docs/raw/master/gradle/license.gradle'
license {
exclude '**/loom/util/DownloadUtil.java'
}
gradlePlugin {
plugins {
fabricLoom {
id = "fabric-loom"
implementationClass = "net.fabricmc.loom.LoomGradlePlugin"
}
}
}
publishing {
publications {
plugin(MavenPublication) { publication ->
groupId project.group
artifactId project.archivesBaseName
version project.version
from components["java"]
artifact sourcesJar
artifact javadocJar
}
}
repositories {
maven {
url "http://mavenupload.modmuss50.me/"
if (project.hasProperty('mavenPass')) {
credentials {
username 'buildslave'
password project.getProperty('mavenPass')
}
}
}
}
}