Flywheel/common/build.gradle

84 lines
2.2 KiB
Groovy
Raw Normal View History

plugins {
id 'idea'
id 'java'
id 'maven-publish'
id 'dev.architectury.loom'
id 'flywheel.java'
id 'flywheel.package-infos'
id 'flywheel.subproject'
id 'flywheel.jar-sets'
id 'flywheel.transitive-source-sets'
}
transitiveSourceSets {
compileClasspath = sourceSets.main.compileClasspath
create('api') {
rootCompile()
}
create('lib') {
rootCompile()
compile sourceSets.api
}
create('backend') {
rootCompile()
compile sourceSets.api, sourceSets.lib
}
sourceSet(sourceSets.main) {
compile sourceSets.api, sourceSets.lib, sourceSets.backend
}
sourceSet(sourceSets.test) {
implementation sourceSets.api, sourceSets.lib, sourceSets.backend
}
}
defaultPackageInfos {
forSourceSets sourceSets.api, sourceSets.lib, sourceSets.backend, sourceSets.main
}
// For sharing with other subprojects.
jarSets {
createJars('apiOnly', sourceSets.api).configure {
it.createOutgoingConfiguration('common')
}
createJars('lib').configure {
it.createOutgoingConfiguration('common')
}
createJars('backend').configure {
it.createOutgoingConfiguration('common')
}
createJars('impl', sourceSets.main).configure {
it.createOutgoingConfiguration('common')
}
}
// For publishing
def apiLibJar = jarSets.createJars('api', sourceSets.api, sourceSets.lib)
2024-04-17 21:05:04 +02:00
dependencies {
2024-04-22 02:15:21 +02:00
modCompileOnly "net.fabricmc:fabric-loader:${fabric_loader_version}"
2024-04-17 21:59:44 +02:00
testImplementation 'org.junit.jupiter:junit-jupiter:5.8.1'
2024-04-17 21:05:04 +02:00
}
test {
2024-04-17 21:05:04 +02:00
useJUnitPlatform()
}
publishing {
publications {
2024-04-23 09:14:19 +02:00
register('mavenIntermediary', MavenPublication) {
2024-04-27 06:23:42 +02:00
artifact apiLibJar.remapJar
artifact apiLibJar.remapSources
artifact apiLibJar.javadocJar
artifactId = "flywheel-common-intermediary-api-${artifact_minecraft_version}"
2024-04-17 21:05:04 +02:00
}
2024-04-23 09:14:19 +02:00
register('mavenMojmap', MavenPublication) {
2024-04-27 06:23:42 +02:00
artifact apiLibJar.jar
artifact apiLibJar.sources
artifact apiLibJar.javadocJar
artifactId = "flywheel-common-mojmap-api-${artifact_minecraft_version}"
2024-04-17 21:05:04 +02:00
}
}
}