Volver al índice
build.gradle
plugins { id 'net.minecraftforge.gradle' version '6.0.54' }
version = '0.3.2-dev'
group = 'ar.com.companeros'
base { archivesName = 'Raps' }
java.toolchain.languageVersion = JavaLanguageVersion.of(17)
// Entorno de Minecraft y pruebas dentro de un servidor real.
minecraft {
mappings channel: 'official', version: '1.20.1'
runs {
configureEach {
workingDirectory project.file('run')
property 'forge.logging.console.level', 'info'
jvmArgs '-Xmx512m', '-Xms128m'
mods { companeros { source sourceSets.main } }
}
gameTestServer { property 'forge.enabledGameTestNamespaces', 'companeros' }
server { args '--nogui' }
client { }
}
}
dependencies { minecraft 'net.minecraftforge:forge:1.20.1-47.4.10' }
tasks.withType(JavaCompile).configureEach { options.encoding = 'UTF-8' }
jar.finalizedBy('reobfJar')
jar { archiveFileName = 'Raps.jar'; exclude '**/*Tests*.class' }
// Utilidad offline separada: su código nunca forma parte del mod distribuido.
sourceSets { maintenance { compileClasspath += sourceSets.main.output + sourceSets.main.compileClasspath
runtimeClasspath += sourceSets.main.output + sourceSets.main.runtimeClasspath } }
tasks.register('migrateProfiles', JavaExec) {
dependsOn maintenanceClasses
classpath = sourceSets.maintenance.runtimeClasspath
mainClass = 'ar.com.companeros.maintenance.ProfileMigrationCli'
if (project.hasProperty('migrationInput') && project.hasProperty('migrationOutput'))
args project.property('migrationInput'), project.property('migrationOutput')
}
// Comprobación de lectura: recuerdos del mapa presentes en el archivo exterior.
tasks.register('verifyMemoryArchive', JavaExec) {
dependsOn maintenanceClasses
classpath = sourceSets.maintenance.runtimeClasspath
mainClass = 'ar.com.companeros.maintenance.ProfileMigrationCli'
if (project.hasProperty('memorySnapshot')) args '--verify-memory', project.property('memorySnapshot')
}