build.gradle.kts 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
  2. import org.springframework.boot.gradle.tasks.bundling.BootJar
  3. group = "gaf3-demo"
  4. version = "2.3.1"
  5. extra["springCloudVersion"] = "Hoxton.SR5"
  6. extra["gafVersion"] = "3.0.616"
  7. extra["fastjsonVersion"] = "1.2.71"
  8. extra["jjwtVersion"] = "0.10.5"
  9. private val repoConf: String = System.getProperty("repoPath") ?: "/var/repo"
  10. val repoPath: String = file("$rootDir").toPath().root.resolve(repoConf).toString()
  11. plugins {
  12. id("java")
  13. id("maven-publish")
  14. id("io.spring.dependency-management") version "1.0.9.RELEASE"
  15. id("org.springframework.boot") version "2.3.1.RELEASE" apply false
  16. id("org.jetbrains.dokka") version "0.10.1"
  17. kotlin("jvm") version "1.3.72" apply false
  18. kotlin("plugin.spring") version "1.3.72" apply false
  19. kotlin("plugin.jpa") version "1.3.72" apply false
  20. }
  21. repositories {
  22. // 阿里云镜像
  23. maven { url = uri("https://maven.aliyun.com/repository/public") }
  24. maven { url = uri("https://maven.aliyun.com/repository/gradle-plugin") }
  25. maven { url = uri("https://maven.aliyun.com/repository/spring") }
  26. maven { url = uri("https://maven.aliyun.com/repository/spring-plugin") }
  27. maven {
  28. name = "localRepo"
  29. url = uri("file://$repoPath")
  30. }
  31. maven {
  32. name = "cc-lotus"
  33. url = uri("http://maven.cc-lotus.info/repository/maven-public/")
  34. }
  35. // mavenCentral()
  36. }
  37. configure(subprojects.filter { it.name != "platform" }) {
  38. apply(plugin = "java")
  39. apply(plugin = "maven-publish")
  40. apply(plugin = "org.jetbrains.kotlin.jvm")
  41. apply(plugin = "org.jetbrains.dokka")
  42. java {
  43. disableAutoTargetJvm()
  44. withSourcesJar()
  45. // withJavadocJar()
  46. }
  47. tasks.withType<JavaCompile> {
  48. options.encoding = "UTF-8"
  49. sourceCompatibility = "1.8"
  50. targetCompatibility = "1.8"
  51. }
  52. tasks.withType<KotlinCompile> {
  53. kotlinOptions {
  54. freeCompilerArgs = listOf("-Xjsr305=strict")
  55. jvmTarget = "1.8"
  56. }
  57. }
  58. tasks.withType<Javadoc> {
  59. options.encoding = "UTF-8"
  60. }
  61. repositories {
  62. maven {
  63. name = "localRepo"
  64. url = uri("file://$repoPath")
  65. }
  66. maven {
  67. name = "cc-lotus"
  68. url = uri("http://maven.cc-lotus.info/repository/maven-public/")
  69. }
  70. // 阿里云镜像
  71. maven { url = uri("https://maven.aliyun.com/repository/public") }
  72. maven { url = uri("https://maven.aliyun.com/repository/gradle-plugin") }
  73. maven { url = uri("https://maven.aliyun.com/repository/spring") }
  74. maven { url = uri("https://maven.aliyun.com/repository/spring-plugin") }
  75. // mavenCentral()
  76. }
  77. publishing {
  78. repositories {
  79. maven {
  80. name = "localRepo"
  81. url = uri("file://$repoPath")
  82. }
  83. }
  84. }
  85. }
  86. task<Copy>("dist") {
  87. into("$buildDir/dist")
  88. project(":services:service-all") {
  89. from(tasks.withType<Jar>())
  90. }
  91. project(":apps:all-in-one") {
  92. from(tasks.withType<Jar>())
  93. }
  94. }
  95. tasks {
  96. // processResources {
  97. // expand(project.properties)
  98. // }
  99. val dokka by getting(org.jetbrains.dokka.gradle.DokkaTask::class) {
  100. outputFormat = "html"
  101. outputDirectory = "$buildDir/dokka"
  102. }
  103. }
  104. //task("printRepo") {
  105. // println(org.jetbrains.kotlin.org.jline.utils.OSUtils.IS_WINDOWS)
  106. // println(repoPath)
  107. //}