apply plugin: 'application'


java.sourceCompatibility = 8
java.targetCompatibility = 8
if (JavaVersion.current().isJava9Compatible()) {
  compileJava.options.release.set(8)
}

sourceSets.main.resources.srcDirs += [ rootProject.file('assets').path ]
mainClassName = "com.ygames.ysoccer.server.ServerLauncher"
application {
  application.setMainClass(mainClassName)
  applicationDefaultJvmArgs = [
    '--add-opens=java.base/java.nio=ALL-UNNAMED',
    '--add-opens=java.base/java.lang.reflect=ALL-UNNAMED',
    '--add-opens=java.base/java.lang=ALL-UNNAMED',
    '--add-opens=java.base/sun.nio.ch=ALL-UNNAMED'
  ]
}

eclipse.project.name = appName + '-server'

dependencies {
  implementation "com.badlogicgames.gdx:gdx-backend-headless:$gdxVersion"
  implementation "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-desktop"
  implementation "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"
  implementation project(':core')
}

jar {
  archiveBaseName.set(appName)
  duplicatesStrategy(DuplicatesStrategy.EXCLUDE)
  dependsOn configurations.runtimeClasspath
  from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } }
  manifest {
    attributes 'Main-Class': project.mainClassName
  }
  doLast {
    file(archiveFile).setExecutable(true, false)
  }
}

// Equivalent to the jar task; here for compatibility with gdx-setup.
tasks.register('dist') {
  dependsOn 'jar'
}
