plugins { id 'java' } group pGroup version '1.0' sourceCompatibility = 8 sourceSets.main { java.srcDir("src/") resources.srcDir("assets/") } repositories { mavenCentral() maven { url "https://jitpack.io" } } jar { archiveFileName.set pArtifactFilename from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } } dependencies { compileOnly "com.github.Anuken.Arc:arc-core:$pMindustryVersion" compileOnly "com.github.Anuken.Mindustry:core:$pMindustryVersion" } task dexify(type: Jar) { archiveName "dexed-$pArtifactFilename" final File jarArtifact = new File(tasks.jar.archiveFile.get().asFile.parent, pArtifactFilename), dexedArtifact = new File(tasks.dexify.getTemporaryDir(), "dexed.jar") doFirst { exec { workingDir dexedArtifact.parent def command = ["d8", "--min-api", pMinApi, "--output", dexedArtifact, jarArtifact] if (System.getProperty('os.name').toLowerCase(Locale.ROOT).contains('windows')) commandLine("cmd", "/c", *command) else commandLine(*command) } } from(zipTree(jarArtifact), zipTree(dexedArtifact)) } task buildDex dependsOn "build", "dexify"