build.gradle 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381
  1. /*
  2. * This build file was auto generated by running the Gradle buildrelease.bat
  3. */
  4. defaultTasks "clean", "build"
  5. //Version define
  6. ext {
  7. }
  8. configurations.all {
  9. transitive = false// 为本依赖关闭依赖传递特性
  10. }
  11. // Apply the java plugin to add support for Java
  12. //apply plugin: 'java'
  13. allprojects {
  14. apply plugin: "java"
  15. apply plugin: "eclipse"
  16. //apply plugin: "pmd"
  17. //apply plugin: "findbugs"
  18. //apply plugin: "jdepend"
  19. configurations.all {
  20. transitive = false// 为本依赖关闭依赖传递特性
  21. }
  22. //java Version
  23. sourceCompatibility = 1.8
  24. targetCompatibility = 1.8
  25. compileJava.options.encoding = 'UTF-8'
  26. eclipse {
  27. /*第一次时请注释这段eclipse设置,可能报错*/
  28. // jdt {
  29. // File f = file('.settings/org.eclipse.core.resources.prefs')
  30. // f.write('eclipse.preferences.version=1\n')
  31. // f.append('encoding/<project>=UTF-8') //use UTF-8
  32. // }
  33. /*
  34. wtp {
  35. facet {
  36. facet name: 'jst.web', type: Facet.FacetType.fixed
  37. facet name: 'wst.jsdt.web', type: Facet.FacetType.fixed
  38. facet name: 'jst.java', type: Facet.FacetType.fixed
  39. facet name: 'jst.web', version: '3.0'
  40. facet name: 'jst.java', version: '1.7'
  41. facet name: 'wst.jsdt.web', version: '1.0'
  42. }
  43. }*/
  44. }
  45. }
  46. buildscript {
  47. repositories {
  48. mavenCentral()
  49. }
  50. dependencies {
  51. // classpath("org.springframework.boot:spring-boot-gradle-plugin:2.1.6.RELEASE")
  52. }
  53. }
  54. // In this section you declare where to find the dependencies of your project
  55. repositories {
  56. // Use 'jcenter' for resolving your dependencies.
  57. // You can declare any Maven/Ivy/file repository here.
  58. mavenCentral()
  59. jcenter()
  60. }
  61. subprojects {
  62. //apply plugin: 'org.springframework.boot'
  63. //apply plugin: 'io.spring.dependency-management'
  64. sourceSets {
  65. main {
  66. java {
  67. srcDir 'src/main/java' // 指定源码目录
  68. }
  69. resources {
  70. srcDir 'src/main/resources' //资源目录
  71. }
  72. }
  73. }
  74. repositories {
  75. mavenLocal()
  76. mavenCentral()
  77. jcenter()
  78. maven { url "https://repo1.maven.org/maven2/" }
  79. maven { url "https://mvnrepository.com/repos/central/" }
  80. maven { url "http://jcenter.bintray.com" }
  81. maven { url "http://mvn.gt.igexin.com/nexus/content/repositories/releases"}
  82. maven { url "https://plugins.gradle.org/m2/" }
  83. maven { url "https://repo.spring.io/plugins-release/" }
  84. maven { url "https://repo.spring.io/milestone" }
  85. maven { url "https://oss.sonatype.org/content/repositories/releases/" }
  86. maven { url "https://maven.repository.redhat.com/ga/" }
  87. maven { url "https://repository.apache.org/content/repositories/releases/" }
  88. }
  89. //all dependencies
  90. dependencies {
  91. //for Test and Compile
  92. testCompile 'junit:junit:4.11'
  93. compileOnly 'junit:junit:4.11'
  94. testCompile group: 'javax.servlet', name: 'javax.servlet-api', version: '3.0.1'
  95. compileOnly group: 'javax.servlet', name: 'javax.servlet-api', version: '3.0.1'
  96. testCompile group: 'org.mockito', name: 'mockito-all', version: '1.10.19'
  97. testCompile group: 'xmlunit', name: 'xmlunit', version: '1.6'
  98. //apache
  99. compile group: 'commons-beanutils', name: 'commons-beanutils', version: '1.9.3'
  100. compile group: 'commons-codec', name: 'commons-codec', version: '1.15'
  101. compile group: 'commons-collections', name: 'commons-collections', version: '3.2.2'
  102. compile group: 'org.apache.commons', name: 'commons-collections4', version: '4.4'
  103. //compile group: 'org.apache.commons', name: 'commons-csv', version: '1.7'
  104. compile group: 'org.apache.commons', name: 'commons-dbcp2', version: '2.6.0'
  105. compile group: 'commons-dbutils', name: 'commons-dbutils', version: '1.7'
  106. compile group: 'org.apache.commons', name: 'commons-digester3', version: '3.2'
  107. compile group: 'commons-digester', name: 'commons-digester', version: '2.1'
  108. compile group: 'commons-io', name: 'commons-io', version: '2.8.0'
  109. compile group: 'commons-lang', name: 'commons-lang', version: '2.6'
  110. compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.11'
  111. compile group: 'commons-logging', name: 'commons-logging', version: '1.2'
  112. compile group: 'org.apache.commons', name: 'commons-pool2', version: '2.6.2'
  113. compile group: 'commons-httpclient', name: 'commons-httpclient', version: '3.1'
  114. compile group: 'commons-fileupload', name: 'commons-fileupload', version: '1.4'
  115. compile group: 'org.apache.commons', name: 'commons-email', version: '1.5'
  116. compile group: 'org.apache.httpcomponents', name: 'httpclient', version: "${httpcomponentsVersion}"
  117. compile group: 'org.apache.httpcomponents', name: 'fluent-hc', version: "${httpcomponentsVersion}"
  118. compile group: 'org.apache.httpcomponents', name: 'httpclient-cache', version: "${httpcomponentsVersion}"
  119. compile group: 'org.apache.httpcomponents', name: 'httpmime', version: "${httpcomponentsVersion}"
  120. compile group: 'org.apache.httpcomponents', name: 'httpcore', version: '4.4.13'
  121. compile group: 'org.apache.velocity', name: 'velocity', version: '1.7'
  122. compile group: 'velocity', name: 'velocity-dep', version: '1.4'
  123. compile group: 'org.freemarker', name: 'freemarker', version: '2.3.30'
  124. compile group: 'org.apache.xmlbeans', name: 'xmlbeans', version: '3.0.1'
  125. compile group: 'org.apache.commons', name: 'commons-compress', version: '1.20'
  126. compile group: 'org.apache.poi', name: 'poi', version: "${poiVersion}"
  127. compile group: 'org.apache.poi', name: 'poi-ooxml', version: "${poiVersion}"
  128. compile group: 'org.apache.poi', name: 'poi-ooxml-schemas', version: "${poiVersion}"
  129. compile group: 'org.apache.poi', name: 'poi-scratchpad', version: "${poiVersion}"
  130. compile group: 'org.apache.commons', name: 'not-yet-commons-ssl', version: '0.3.9'
  131. //logs
  132. compile group: 'org.apache.logging.log4j', name: 'log4j-1.2-api', version: "${log4jVersion}"
  133. compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: "${log4jVersion}"
  134. compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: "${log4jVersion}"
  135. compile group: 'org.apache.logging.log4j', name: 'log4j-jcl', version: "${log4jVersion}"
  136. compile group: 'org.apache.logging.log4j', name: 'log4j-jul', version: "${log4jVersion}"
  137. compile group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: "${log4jVersion}"
  138. compile group: 'org.apache.logging.log4j', name: 'log4j-web', version: "${log4jVersion}"
  139. compile group: 'org.slf4j', name: 'slf4j-api', version: "${slf4jVersion}"
  140. compile group: 'org.jboss.logging', name: 'jboss-logging', version: '3.4.1.Final'
  141. //spring
  142. compile group: 'org.springframework', name: 'spring-aop', version: "${springVersion}"
  143. compile group: 'org.springframework', name: 'spring-aspects', version: "${springVersion}"
  144. compile group: 'org.springframework', name: 'spring-beans', version: "${springVersion}"
  145. compile group: 'org.springframework', name: 'spring-core', version: "${springVersion}"
  146. compile group: 'org.springframework', name: 'spring-context', version: "${springVersion}"
  147. compile group: 'org.springframework', name: 'spring-context-indexer', version: "${springVersion}"
  148. compile group: 'org.springframework', name: 'spring-context-support', version: "${springVersion}"
  149. compile group: 'org.springframework', name: 'spring-expression', version: "${springVersion}"
  150. //compile group: 'org.springframework', name: 'spring-instrument', version: "${springVersion}"
  151. //compile group: 'org.springframework', name: 'spring-jcl', version: "${springVersion}"
  152. compile group: 'org.springframework', name: 'spring-jdbc', version: "${springVersion}"
  153. //compile group: 'org.springframework', name: 'spring-jms', version: "${springVersion}"
  154. compile group: 'org.springframework', name: 'spring-messaging', version: "${springVersion}"
  155. //compile group: 'org.springframework', name: 'spring-orm', version: "${springVersion}"
  156. compile group: 'org.springframework', name: 'spring-oxm', version: "${springVersion}"
  157. compile group: 'org.springframework', name: 'spring-tx', version: "${springVersion}"
  158. compile group: 'org.springframework', name: 'spring-web', version: "${springVersion}"
  159. //compile group: 'org.springframework', name: 'spring-webflux', version: "${springVersion}"
  160. compile group: 'org.springframework', name: 'spring-webmvc', version: "${springVersion}"
  161. //compile group: 'org.springframework', name: 'spring-websocket', version: "${springVersion}"
  162. testCompile group: 'org.springframework', name: 'spring-test', version: "${springVersion}"
  163. //kafka support
  164. // https://mvnrepository.com/artifact/org.apache.kafka/kafka-clients
  165. compile group: 'org.apache.kafka', name: 'kafka-clients', version: '2.5.0'
  166. // https://mvnrepository.com/artifact/org.springframework.kafka/spring-kafka
  167. compile group: 'org.springframework.kafka', name: 'spring-kafka', version: '2.5.2.RELEASE'
  168. // https://mvnrepository.com/artifact/org.springframework.retry/spring-retry
  169. compile group: 'org.springframework.retry', name: 'spring-retry', version: '1.3.0'
  170. //spring-security
  171. compile group: 'org.springframework.security', name: 'spring-security-core', version: "${springSecurityVersion}"
  172. compile group: 'org.springframework.security', name: 'spring-security-web', version: "${springSecurityVersion}"
  173. compile group: 'org.springframework.security', name: 'spring-security-crypto', version: "${springSecurityVersion}"
  174. //srpingboot
  175. compile group: 'org.springframework.boot', name: 'spring-boot', version: "${springBootVersion}"
  176. compile group: 'org.springframework.boot', name: 'spring-boot-starter', version: "${springBootVersion}"
  177. compile group: 'org.springframework.boot', name: 'spring-boot-actuator', version: "${springBootVersion}"
  178. compile group: 'org.springframework.boot', name: 'spring-boot-autoconfigure', version: "${springBootVersion}"
  179. compile group: 'org.springframework.boot', name: 'spring-boot-starter-freemarker', version: "${springBootVersion}"
  180. compile group: 'org.springframework.boot', name: 'spring-boot-starter-log4j2', version: "${springBootVersion}"
  181. compile group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: "${springBootVersion}"
  182. compile group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat', version: "${springBootVersion}"
  183. compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-redis', version: "${springBootVersion}"
  184. testCompile group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: "${springBootVersion}"
  185. //spring-data
  186. compile group: 'org.springframework.data', name: 'spring-data-commons', version: "${springDataVersion}"
  187. compile group: 'org.springframework.data', name: 'spring-data-keyvalue', version: "${springDataVersion}"
  188. compile group: 'org.springframework.data', name: 'spring-data-redis', version: "${springDataVersion}"
  189. //spring-session
  190. compile group: 'org.springframework.session', name: 'spring-session-core', version: "${springSessionVersion}"
  191. compile group: 'org.springframework.session', name: 'spring-session-data-redis', version: "${springSessionVersion}"
  192. //saml
  193. compile group: 'org.opensaml', name: 'opensaml', version: '2.6.4'
  194. compile group: 'org.opensaml', name: 'openws', version: '1.5.4'
  195. compile group: 'org.opensaml', name: 'xmltooling', version: '1.4.4'
  196. //jose-jwt
  197. compile group: 'com.nimbusds', name: 'nimbus-jose-jwt', version: '9.0.1'
  198. compile group: 'net.jcip', name: 'jcip-annotations', version: '1.0'
  199. compile group: 'net.minidev', name: 'json-smart', version: '2.3'
  200. compile group: 'net.minidev', name: 'asm', version: '1.0.2'
  201. //oauth third party JustAuth
  202. compile group: 'com.xkcoding.http', name: 'simple-http', version: '1.0.3'
  203. compile group: 'me.zhyd.oauth', name: 'JustAuth', version: '1.15.8'
  204. //common
  205. compile group: 'org.javassist', name: 'javassist', version: '3.23.0-GA'
  206. compile group: 'org.owasp.esapi', name: 'esapi', version: '2.2.0.0'
  207. compile group: 'com.sun.mail', name: 'javax.mail', version: '1.6.2'
  208. // https://mvnrepository.com/artifact/org.eclipse.persistence/javax.persistence
  209. // for mybatis-jpa-extra
  210. compile group: 'org.eclipse.persistence', name: 'javax.persistence', version: '2.2.1'
  211. compile group: 'javax.activation', name: 'activation', version: '1.1.1'
  212. compile group: 'javax.annotation', name: 'javax.annotation-api', version: '1.3.2'
  213. compile group: 'javax.transaction', name: 'jta', version: '1.1'
  214. compile group: 'javax.transaction', name: 'javax.transaction-api', version: '1.3'
  215. compile group: 'javax.validation', name: 'validation-api', version: '2.0.1.Final'
  216. compile group: 'javax.xml', name: 'jsr173', version: '1.0'
  217. compile group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.1'
  218. compile group: 'com.sun.xml.bind', name: 'jaxb-core', version: '2.3.0.1'
  219. compile group: 'com.sun.xml.bind', name: 'jaxb-impl', version: '2.3.2'
  220. compile group: 'com.sun.xml.bind', name: 'jaxb-xjc', version: '2.3.2'
  221. //crypto
  222. compile group: 'org.bouncycastle', name: 'bcpkix-jdk15on', version: "${bouncycastleVersion}"
  223. compile group: 'org.bouncycastle', name: 'bcprov-jdk15on', version: "${bouncycastleVersion}"
  224. compile group: 'org.bouncycastle', name: 'bcprov-ext-jdk15on', version: "${bouncycastleVersion}"
  225. compile group: 'com.google.crypto.tink', name: 'tink', version: '1.4.0'
  226. //kaptcha
  227. compile group: 'com.jhlabs', name: 'filters', version: '2.0.235-1'
  228. compile group: 'com.github.penggle', name: 'kaptcha', version: '2.3.2'
  229. //json
  230. compile group: 'com.google.code.gson', name: 'gson', version: '2.8.6'
  231. compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: "${jacksonVersion}"
  232. compile group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: "${jacksonVersion}"
  233. compile group: 'com.fasterxml.jackson.core', name: 'jackson-annotations', version: "${jacksonVersion}"
  234. compile group: 'com.fasterxml', name: 'classmate', version: '1.5.0'
  235. compile group: 'com.alibaba', name: 'fastjson', version: '1.2.74'
  236. //reactive
  237. compile group: 'org.reactivestreams', name: 'reactive-streams', version: '1.0.2'
  238. compile group: 'io.projectreactor', name: 'reactor-core', version: '3.2.10.RELEASE'
  239. compile group: 'eu.tekul', name: 'szxcvbn_2.9.2', version: '0.2'
  240. //quartz
  241. compile group: 'org.quartz-scheduler', name: 'quartz', version: '2.3.2'
  242. //database
  243. compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.21'
  244. compile group: 'com.alibaba', name: 'druid', version: '1.2.1'
  245. compile group: 'com.alibaba', name: 'druid-spring-boot-starter', version: '1.2.1'
  246. compile group: 'redis.clients', name: 'jedis', version: '3.3.0'
  247. compile group: 'org.ehcache', name: 'ehcache', version: '3.9.0'
  248. //mybatis
  249. compile group: 'org.mybatis', name: 'mybatis', version: '3.5.5'
  250. compile group: 'org.mybatis', name: 'mybatis-spring', version: '2.0.5'
  251. //hibernate
  252. compile group: 'org.hibernate.validator', name: 'hibernate-validator', version: "${hibernateVersion}"
  253. compile group: 'org.hibernate', name: 'hibernate-validator-cdi', version: "${hibernateVersion}"
  254. compile group: 'org.hibernate.validator', name: 'hibernate-validator-annotation-processor', version: "${hibernateVersion}"
  255. //usefull
  256. compile group: 'joda-time', name: 'joda-time', version: '2.10.6'
  257. compile group: 'org.yaml', name: 'snakeyaml', version: '1.26'
  258. compile group: 'net.sourceforge.nekohtml', name: 'nekohtml', version: '1.9.22'
  259. compile group: 'org.jdom', name: 'jdom', version: '2.0.2'
  260. compile group: 'com.google.zxing', name: 'core', version: '3.4.0'
  261. compile group: 'com.google.guava', name: 'guava', version: '29.0-jre'
  262. compile group: 'ognl', name: 'ognl', version: '3.2.14'
  263. compile group: 'cglib', name: 'cglib', version: '3.3.0'
  264. compile group: 'org.ow2.asm', name: 'asm', version: '7.3.1'
  265. compile group: 'aopalliance', name: 'aopalliance', version: '1.0'
  266. compile group: 'org.aspectj', name: 'aspectjtools', version: '1.9.4'
  267. compile group: 'dom4j', name: 'dom4j', version: '1.6.1'
  268. compile group: 'xalan', name: 'serializer', version: '2.7.2'
  269. compile group: 'xml-resolver', name: 'xml-resolver', version: '1.2'
  270. compile group: 'org.apache.santuario', name: 'xmlsec', version: '1.5.8'
  271. compile group: 'org.ogce', name: 'xpp3', version: '1.1.6'
  272. compile group: 'com.thoughtworks.xstream', name: 'xstream', version: '1.4.10'
  273. compile group: 'org.passay', name: 'passay', version: '1.6.0'
  274. //local jars
  275. compile fileTree(dir: "${rootDir}/maxkey-lib/", include: '*.jar')
  276. //阿里云
  277. compile group: 'com.aliyun', name: 'aliyun-java-sdk-core', version: '4.5.1'
  278. //腾讯云
  279. compile group: 'com.tencentcloudapi', name: 'tencentcloud-sdk-java', version: '3.1.33'
  280. //tomcat embed Core Tomcat implementation
  281. compile group: 'org.apache.tomcat.embed', name: 'tomcat-embed-core', version: '9.0.38'
  282. //JULI logging implementation for embedded Tomcat
  283. compile group: 'org.apache.tomcat.embed', name: 'tomcat-embed-logging-juli', version: '8.5.2'
  284. }
  285. jar {
  286. def currentTime = java.time.ZonedDateTime.now()
  287. manifest {
  288. attributes(
  289. "Implementation-Title": project.name,
  290. "Implementation-Vendor": project.vendor,
  291. "Created-By": project.author,
  292. "Implementation-Date": currentTime,
  293. "Implementation-Version": project.version
  294. )
  295. }
  296. }
  297. task copyjar2Release(type: Copy) {
  298. println "$buildDir/libs/ to $rootDir/build/maxkey-jars/"
  299. into "$rootDir/build/maxkey-jars/"
  300. from "$buildDir/libs/"
  301. include '*.jar'
  302. }
  303. task copydemoWar2Release(type: Copy) {
  304. into "$rootDir/build/demowar/"
  305. from "$buildDir/libs/"
  306. include '*demo*.war'
  307. }
  308. task copyWar2Release(type: Copy) {
  309. into "$rootDir/build/maxkey-war"
  310. from "$buildDir/libs/"
  311. include '*web*.war'
  312. }
  313. task copyotherWar2Release(type: Copy) {
  314. into "$rootDir/build/"
  315. from "$buildDir/libs/"
  316. }
  317. task buildRelease(dependsOn:['build','jar','copyjar2Release']) {
  318. //项目名
  319. println "project " + project.name + " environment ..."
  320. }
  321. }
  322. //copy Dep Jars to /build/maxkey-depjars
  323. project('maxkey-core') {
  324. task copyDepJars(type: Copy){
  325. println "copy Dep Jars to $rootDir/build/maxkey-depjars"
  326. from configurations.runtime
  327. into "$rootDir/build/maxkey-depjars"
  328. }
  329. }
  330. task buildRelease(dependsOn:['build']) {
  331. //项目名
  332. println "project " + project.name + " environment ..."
  333. //项目所在的group version 版本号
  334. println "project group " + project.group +" , version " + project.version
  335. //项目相对路径
  336. println "project path " + project.path
  337. //项目的绝对路径
  338. println "project projectDir " + project.projectDir
  339. //项目的build文件绝对路径
  340. println "project buildDir " + project.buildDir
  341. println 'Build MaxKey '+project.name +' '
  342. }
  343. // In this section you declare the dependencies for your production and test code
  344. dependencies {
  345. }