build.gradle.kts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. plugins {
  2. id("kotlinx-serialization")
  3. id("kotlin")
  4. id("java")
  5. }
  6. apply(plugin = "com.github.johnrengelman.shadow")
  7. version = Versions.Mirai.console
  8. tasks.withType<com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar> {
  9. manifest {
  10. attributes["Main-Class"] = "net.mamoe.mirai.console.MiraiConsoleTerminalLoader"
  11. }
  12. }
  13. kotlin {
  14. sourceSets {
  15. all {
  16. languageSettings.useExperimentalAnnotation("kotlin.Experimental")
  17. languageSettings.useExperimentalAnnotation("kotlin.RequiresOptIn")
  18. languageSettings.progressiveMode = true
  19. languageSettings.useExperimentalAnnotation("net.mamoe.mirai.utils.MiraiInternalAPI")
  20. }
  21. }
  22. }
  23. dependencies {
  24. compileOnly("net.mamoe:mirai-core-qqandroid:${Versions.core}")
  25. api(project(":mirai-console"))
  26. api(group = "com.googlecode.lanterna", name = "lanterna", version = "3.0.2")
  27. }
  28. val compileKotlin: org.jetbrains.kotlin.gradle.tasks.KotlinCompile by tasks
  29. compileKotlin.kotlinOptions {
  30. jvmTarget = "1.8"
  31. }
  32. val compileTestKotlin: org.jetbrains.kotlin.gradle.tasks.KotlinCompile by tasks
  33. compileTestKotlin.kotlinOptions {
  34. jvmTarget = "1.8"
  35. }
  36. java {
  37. sourceCompatibility = JavaVersion.VERSION_1_8
  38. targetCompatibility = JavaVersion.VERSION_1_8
  39. }
  40. tasks.withType(JavaCompile::class.java) {
  41. options.encoding = "UTF8"
  42. }