115 lines
3.1 KiB
Groovy
115 lines
3.1 KiB
Groovy
plugins {
|
|
id 'fabric-loom' version '1.8-SNAPSHOT'
|
|
id 'maven-publish'
|
|
}
|
|
|
|
if (System.getenv("VERSION")) {
|
|
project.mod_version = System.getenv("VERSION")
|
|
}
|
|
|
|
version = "${project.mod_version}"
|
|
group = "dev.draylar"
|
|
|
|
base {
|
|
archivesName = "omega-config"
|
|
}
|
|
|
|
allprojects {
|
|
apply plugin: "fabric-loom"
|
|
sourceCompatibility = targetCompatibility = JavaVersion.VERSION_17
|
|
version = project.mod_version
|
|
|
|
repositories {}
|
|
|
|
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}"
|
|
}
|
|
|
|
processResources {
|
|
inputs.property "version", project.version
|
|
|
|
filesMatching("fabric.mod.json") {
|
|
expand "version": project.version
|
|
}
|
|
}
|
|
|
|
tasks.withType(JavaCompile).configureEach {
|
|
it.options.release = 17
|
|
javadoc.options.addStringOption('Xdoclint:none', '-quiet')
|
|
}
|
|
|
|
jar {
|
|
from(rootProject.file("LICENSE")) {
|
|
rename { "LICENSE_${project.archivesBaseName.replace('-', '_')}" }
|
|
}
|
|
}
|
|
}
|
|
|
|
subprojects {
|
|
apply plugin: 'fabric-loom'
|
|
apply plugin: 'maven-publish'
|
|
|
|
archivesBaseName = project.name
|
|
group = "dev.draylar.${project.group}"
|
|
|
|
// Only publish for submodules (not the root project) - add standard jar, + sources & development jar
|
|
publishing {
|
|
publications {
|
|
create("mavenJava", MavenPublication) {
|
|
artifactId = project.archives_base_name
|
|
version = "${project.mod_version}+${project.minecraft_version}"
|
|
from components.java
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
// Add repositories to publish to here.
|
|
// Notice: This block does NOT have the same function as the block in the top level.
|
|
// The repositories here will be used for publishing your artifact, not for
|
|
// retrieving dependencies.
|
|
maven {
|
|
name = "Gitea"
|
|
url = uri("https://git.bigduckie.dev/api/packages/big-duckie/maven")
|
|
|
|
credentials(HttpHeaderCredentials) {
|
|
name = "Authorization"
|
|
value = "token ${System.getenv("MAVEN_TOKEN")}"
|
|
}
|
|
|
|
authentication {
|
|
header(HttpHeaderAuthentication)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// Add sources & javadoc artifacts
|
|
java {
|
|
withSourcesJar()
|
|
withJavadocJar()
|
|
}
|
|
}
|
|
|
|
// Main project depends on the base & gui module for testing
|
|
dependencies {
|
|
implementation project(path: ":omega-config-base", configuration: "namedElements")
|
|
|
|
afterEvaluate {
|
|
testmodImplementation sourceSets.main.output
|
|
}
|
|
}
|
|
|
|
sourceSets {
|
|
testmod {
|
|
compileClasspath += main.compileClasspath
|
|
runtimeClasspath += main.runtimeClasspath
|
|
}
|
|
|
|
test {
|
|
compileClasspath += main.compileClasspath
|
|
runtimeClasspath += main.runtimeClasspath
|
|
}
|
|
} |