build.gradle 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. buildscript {
  2. repositories {
  3. mavenLocal()
  4. maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
  5. mavenCentral()
  6. }
  7. dependencies {
  8. classpath "org.springframework.boot:spring-boot-gradle-plugin:2.3.12.RELEASE"
  9. classpath 'org.apache.commons:commons-lang3:3.12.0'
  10. classpath 'commons-io:commons-io:2.11.0'
  11. }
  12. }
  13. plugins {
  14. id 'idea'
  15. id 'java-library'
  16. id 'io.spring.dependency-management' version '1.0.11.RELEASE'
  17. }
  18. ext {
  19. buildNumber = System.getenv('BUILD_NUMBER_DISABLED') == null ? "0" : System.getenv('BUILD_NUMBER_DISABLED')
  20. jmhVersion = '1.32'
  21. poiVersion = '4.1.2'
  22. antlr4Version = '4.9.3'
  23. querydslVersion = '5.0.0'
  24. groovyVersion = '2.5.16'
  25. schemacrawlerVersion = '16.16.11'
  26. springBootVersion = '2.3.12.RELEASE'
  27. springCloudVersion = 'Hoxton.SR12'
  28. }
  29. idea {
  30. project {
  31. jdkName = '1.8'
  32. languageLevel = '1.8'
  33. }
  34. module {
  35. downloadJavadoc = true
  36. downloadSources = true
  37. }
  38. }
  39. allprojects {
  40. apply plugin: 'java-library'
  41. group 'com.galaxis.wms'
  42. version "0.0.$buildNumber-SNAPSHOT"
  43. repositories {
  44. mavenLocal()
  45. maven { url 'https://nexus.yyjzt.com/nexus/content/groups/public/' }
  46. maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
  47. mavenCentral()
  48. }
  49. // 默认是24小时,gradle会检查一次依赖,可以设置每次build都进行检查
  50. configurations.all {
  51. // resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
  52. }
  53. sourceCompatibility = 1.8
  54. targetCompatibility = 1.8
  55. tasks.withType(JavaCompile) {
  56. options.encoding = 'UTF-8'
  57. // options.warnings = false
  58. // options.deprecation = true
  59. options.compilerArgs << '-parameters'
  60. }
  61. }
  62. subprojects {
  63. apply plugin: 'idea'
  64. apply plugin: 'java-library'
  65. apply plugin: 'maven-publish'
  66. apply plugin: 'io.spring.dependency-management'
  67. dependencyManagement {
  68. imports {
  69. mavenBom "org.springframework.boot:spring-boot-dependencies:$springBootVersion"
  70. mavenBom "org.springframework.cloud:spring-cloud-dependencies:$springCloudVersion"
  71. }
  72. dependencies {
  73. // performance test
  74. dependency "org.openjdk.jmh:jmh-core:$jmhVersion"
  75. dependency "org.openjdk.jmh:jmh-generator-annprocess:$jmhVersion"
  76. // javax
  77. dependency 'javax.servlet:javax.servlet-api:4.0.1'
  78. dependency 'javax.inject:javax.inject:1'
  79. dependency 'javax.validation:validation-api:2.0.1.Final'
  80. dependency 'javax.persistence:persistence-api:1.0.2'
  81. dependency 'jakarta.persistence:jakarta.persistence-api:2.2.3'
  82. dependency 'com.google.code.findbugs:jsr305:3.0.2'
  83. dependency 'org.glassfish:javax.el:3.0.1-b09'
  84. // jdbc
  85. dependency 'p6spy:p6spy:3.9.1'
  86. dependency 'com.oracle.database.nls:orai18n:21.3.0.0'
  87. // apache commons
  88. dependency 'commons-io:commons-io:2.11.0'
  89. dependency 'org.apache.commons:commons-text:1.9'
  90. dependency 'org.apache.commons:commons-email:1.5'
  91. dependency 'commons-beanutils:commons-beanutils:1.9.4'
  92. // http相关
  93. dependency 'com.squareup.okhttp3:okhttp:4.9.3'
  94. dependency 'com.squareup.retrofit2:retrofit:2.9.0'
  95. // json、xml相关
  96. dependency 'org.json:json:20210307'
  97. dependency 'com.alibaba:fastjson:1.2.78'
  98. dependency 'com.thoughtworks.xstream:xstream:1.4.19'
  99. // 反射相关
  100. dependency 'net.jodah:typetools:0.6.3'
  101. dependency 'cglib:cglib:3.3.0'
  102. dependency 'org.reflections:reflections:0.10.2'
  103. // groovy
  104. dependency "org.codehaus.groovy:groovy:$groovyVersion"
  105. // 验证码
  106. dependency 'com.github.cage:cage:1.0'
  107. dependency 'com.github.axet:kaptcha:0.0.9'
  108. dependency 'com.github.bingoohuang:patchca:0.0.1'
  109. // antlr4
  110. dependency "org.antlr:antlr4-runtime:$antlr4Version"
  111. dependency "org.antlr:antlr4:$antlr4Version"
  112. // excel读写
  113. dependency "org.apache.poi:poi:$poiVersion"
  114. dependency "org.apache.poi:poi-ooxml:$poiVersion"
  115. dependency "org.apache.poi:poi-ooxml:$poiVersion"
  116. dependency "org.apache.poi:poi-ooxml-schemas:$poiVersion"
  117. dependency 'com.alibaba:easyexcel:3.0.5'
  118. // querydsl
  119. dependency "com.querydsl:querydsl-core:$querydslVersion"
  120. dependency "com.querydsl:querydsl-sql:$querydslVersion"
  121. dependency "com.querydsl:querydsl-jpa:$querydslVersion"
  122. dependency "com.querydsl:querydsl-apt:$querydslVersion"
  123. dependency "com.querydsl:querydsl-codegen:$querydslVersion"
  124. dependency "com.querydsl:querydsl-sql-codegen:$querydslVersion"
  125. // jwt
  126. dependency 'io.jsonwebtoken:jjwt-api:0.11.2'
  127. dependency 'io.jsonwebtoken:jjwt-impl:0.11.2'
  128. dependency 'io.jsonwebtoken:jjwt-jackson:0.11.2'
  129. // schemacrawler
  130. dependency "us.fatehi:schemacrawler:$schemacrawlerVersion"
  131. dependency "us.fatehi:schemacrawler-commandline:$schemacrawlerVersion"
  132. dependency "us.fatehi:schemacrawler-postgresql:$schemacrawlerVersion"
  133. dependency "us.fatehi:schemacrawler-oracle:$schemacrawlerVersion"
  134. dependency "us.fatehi:schemacrawler-sqlserver:$schemacrawlerVersion"
  135. dependency "us.fatehi:schemacrawler-mysql:$schemacrawlerVersion"
  136. // 版本冲突的包
  137. dependency 'org.ow2.asm:asm:7.1'
  138. dependency 'org.apache.commons:commons-math3:3.6.1'
  139. dependency 'org.javassist:javassist:3.28.0-GA'
  140. // 其他工具包
  141. dependency 'org.jetbrains:annotations:23.0.0'
  142. dependency 'com.google.guava:guava:31.0.1-jre'
  143. dependency 'com.google.zxing:javase:3.4.1'
  144. dependency 'com.belerweb:pinyin4j:2.5.1'
  145. dependency 'eu.bitwalker:UserAgentUtils:1.21'
  146. dependency 'net.sf.dozer:dozer:5.5.1'
  147. dependency 'ognl:ognl:3.2.21'
  148. dependency 'com.github.jsqlparser:jsqlparser:4.2'
  149. dependency 'com.jfinal:enjoy:4.9.16'
  150. dependency 'org.apache.velocity:velocity:1.7'
  151. dependency 'com.xuxueli:xxl-job-core:2.3.0'
  152. }
  153. }
  154. dependencies {
  155. api 'org.springframework.boot:spring-boot-starter-logging'
  156. compileOnly 'org.projectlombok:lombok'
  157. annotationProcessor 'org.projectlombok:lombok'
  158. testCompileOnly 'org.projectlombok:lombok'
  159. testAnnotationProcessor 'org.projectlombok:lombok'
  160. testImplementation 'org.openjdk.jmh:jmh-core'
  161. testImplementation 'org.openjdk.jmh:jmh-generator-annprocess'
  162. testImplementation 'org.springframework.boot:spring-boot-starter-test'
  163. }
  164. // task sourcesJar(type: Jar) {
  165. // archiveClassifier.convention('sources')
  166. // archiveClassifier.set('sources')
  167. // from sourceSets.main.allSource
  168. // }
  169. // task javadocJar(type: Jar) {
  170. // archiveClassifier.convention('javadoc')
  171. // archiveClassifier.set('javadoc')
  172. // from javadoc.destinationDir
  173. // }
  174. // artifacts {
  175. // archives sourcesJar
  176. // archives javadocJar
  177. // }
  178. jar {
  179. manifest.attributes provider: 'gradle'
  180. }
  181. // test {
  182. // useJUnitPlatform()
  183. // }
  184. publishing {
  185. repositories {
  186. maven {
  187. url = "http://nexus.yvanui.com/nexus/content/repositories/snapshots/"
  188. credentials {
  189. username = project.properties['NEXUS_USERNAME']
  190. password = project.properties['NEXUS_PASSWORD']
  191. }
  192. }
  193. }
  194. publications {
  195. mavenJava(MavenPublication) {
  196. versionMapping {
  197. usage('java-api') {
  198. fromResolutionOf('runtimeClasspath')
  199. }
  200. usage('java-runtime') {
  201. fromResolutionResult()
  202. }
  203. }
  204. from components.java
  205. // artifact sourcesJar
  206. // artifact javadocJar
  207. pom {
  208. name = 'yvan-framework library'
  209. description = 'yvan-framework library'
  210. }
  211. }
  212. }
  213. }
  214. }
  215. jar {
  216. enabled = false
  217. }