build.gradle.kts 3.4 KB

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