/* * This build file was auto generated by running the Gradle buildrelease.bat */ defaultTasks "clean", "build" //Version define ext { } configurations.all { transitive = false// 为本依赖关闭依赖传递特性 } // Apply the java plugin to add support for Java //apply plugin: 'java' allprojects { apply plugin: "java" apply plugin: "eclipse" //apply plugin: "pmd" //apply plugin: "findbugs" //apply plugin: "jdepend" configurations.all { transitive = false// 为本依赖关闭依赖传递特性 } //JAVA Version sourceCompatibility = 1.8 targetCompatibility = 1.8 compileJava.options.encoding = 'UTF-8' eclipse { jdt { File f = file('.settings/org.eclipse.core.resources.prefs') f.write('eclipse.preferences.version=1\n') f.append('encoding/=UTF-8') //use UTF-8 }/* wtp { facet { facet name: 'jst.web', type: Facet.FacetType.fixed facet name: 'wst.jsdt.web', type: Facet.FacetType.fixed facet name: 'jst.java', type: Facet.FacetType.fixed facet name: 'jst.web', version: '3.0' facet name: 'jst.java', version: '1.7' facet name: 'wst.jsdt.web', version: '1.0' } }*/ } } buildscript { repositories { mavenCentral() } dependencies { // classpath("org.springframework.boot:spring-boot-gradle-plugin:2.1.6.RELEASE") } } // In this section you declare where to find the dependencies of your project repositories { // Use 'jcenter' for resolving your dependencies. // You can declare any Maven/Ivy/file repository here. mavenCentral() jcenter() } subprojects { //apply plugin: 'org.springframework.boot' //apply plugin: 'io.spring.dependency-management' //项目名 println project.name //项目相对路径 println project.path //项目描述 println project.description //项目的绝对路径 println project.projectDir //项目的build文件绝对路径 println project.buildDir //项目所在的group println project.group //项目的版本号 println project.version //项目的ant对象 println project.ant sourceSets { main { java { srcDir 'src/main/java' // 指定源码目录 } resources { srcDir 'src/main/resources' //资源目录 } } } repositories { mavenLocal() mavenCentral() jcenter() maven { url "https://repo1.maven.org/maven2/" } maven { url "https://mvnrepository.com/repos/central/" } maven { url "http://jcenter.bintray.com" } maven { url "http://mvn.gt.igexin.com/nexus/content/repositories/releases"} maven { url "https://plugins.gradle.org/m2/" } maven { url "https://repo.spring.io/plugins-release/" } maven { url "https://repo.spring.io/milestone" } maven { url "https://oss.sonatype.org/content/repositories/releases/" } maven { url "https://maven.repository.redhat.com/ga/" } maven { url "https://repository.apache.org/content/repositories/releases/" } } //all dependencies dependencies { //for Test and Compile testCompile 'junit:junit:4.11' compileOnly 'junit:junit:4.11' testCompile group: 'javax.servlet', name: 'javax.servlet-api', version: '3.0.1' compileOnly group: 'javax.servlet', name: 'javax.servlet-api', version: '3.0.1' testCompile group: 'org.mockito', name: 'mockito-all', version: '1.10.19' testCompile group: 'xmlunit', name: 'xmlunit', version: '1.6' //apache compile group: 'commons-beanutils', name: 'commons-beanutils', version: '1.9.3' compile group: 'commons-codec', name: 'commons-codec', version: '1.14' compile group: 'commons-collections', name: 'commons-collections', version: '3.2.2' //compile group: 'org.apache.commons', name: 'commons-csv', version: '1.7' compile group: 'org.apache.commons', name: 'commons-dbcp2', version: '2.6.0' compile group: 'commons-dbutils', name: 'commons-dbutils', version: '1.7' compile group: 'org.apache.commons', name: 'commons-digester3', version: '3.2' compile group: 'commons-digester', name: 'commons-digester', version: '2.1' compile group: 'commons-io', name: 'commons-io', version: '2.6' compile group: 'commons-lang', name: 'commons-lang', version: '2.6' compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.9' compile group: 'commons-logging', name: 'commons-logging', version: '1.2' compile group: 'org.apache.commons', name: 'commons-pool2', version: '2.6.2' compile group: 'commons-httpclient', name: 'commons-httpclient', version: '3.1' compile group: 'commons-fileupload', name: 'commons-fileupload', version: '1.4' compile group: 'org.apache.commons', name: 'commons-email', version: '1.5' compile group: 'org.apache.httpcomponents', name: 'httpclient', version: "${httpcomponentsVersion}" compile group: 'org.apache.httpcomponents', name: 'fluent-hc', version: "${httpcomponentsVersion}" compile group: 'org.apache.httpcomponents', name: 'httpclient-cache', version: "${httpcomponentsVersion}" compile group: 'org.apache.httpcomponents', name: 'httpmime', version: "${httpcomponentsVersion}" compile group: 'org.apache.httpcomponents', name: 'httpcore', version: '4.4.13' compile group: 'org.apache.velocity', name: 'velocity', version: '1.7' compile group: 'velocity', name: 'velocity-dep', version: '1.4' compile group: 'org.freemarker', name: 'freemarker', version: '2.3.30' compile group: 'org.apache.commons', name: 'not-yet-commons-ssl', version: '0.3.9' //logs compile group: 'org.apache.logging.log4j', name: 'log4j-1.2-api', version: "${log4jVersion}" compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: "${log4jVersion}" compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: "${log4jVersion}" compile group: 'org.apache.logging.log4j', name: 'log4j-jcl', version: "${log4jVersion}" compile group: 'org.apache.logging.log4j', name: 'log4j-jul', version: "${log4jVersion}" compile group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: "${log4jVersion}" compile group: 'org.apache.logging.log4j', name: 'log4j-web', version: "${log4jVersion}" compile group: 'org.slf4j', name: 'slf4j-api', version: "${slf4jVersion}" compile group: 'org.jboss.logging', name: 'jboss-logging', version: '3.4.1.Final' //spring compile group: 'org.springframework', name: 'spring-aop', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-aspects', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-beans', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-core', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-context', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-context-indexer', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-context-support', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-expression', version: "${springVersion}" //compile group: 'org.springframework', name: 'spring-instrument', version: "${springVersion}" //compile group: 'org.springframework', name: 'spring-jcl', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-jdbc', version: "${springVersion}" //compile group: 'org.springframework', name: 'spring-jms', version: "${springVersion}" //compile group: 'org.springframework', name: 'spring-messaging', version: "${springVersion}" //compile group: 'org.springframework', name: 'spring-orm', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-oxm', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-tx', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-web', version: "${springVersion}" //compile group: 'org.springframework', name: 'spring-webflux', version: "${springVersion}" compile group: 'org.springframework', name: 'spring-webmvc', version: "${springVersion}" //compile group: 'org.springframework', name: 'spring-websocket', version: "${springVersion}" testCompile group: 'org.springframework', name: 'spring-test', version: "${springVersion}" //spring-security compile group: 'org.springframework.security', name: 'spring-security-core', version: "${springSecurityVersion}" compile group: 'org.springframework.security', name: 'spring-security-web', version: "${springSecurityVersion}" compile group: 'org.springframework.security', name: 'spring-security-crypto', version: "${springSecurityVersion}" //srpingboot compile group: 'org.springframework.boot', name: 'spring-boot', version: "${springBootVersion}" compile group: 'org.springframework.boot', name: 'spring-boot-starter', version: "${springBootVersion}" compile group: 'org.springframework.boot', name: 'spring-boot-actuator', version: "${springBootVersion}" compile group: 'org.springframework.boot', name: 'spring-boot-autoconfigure', version: "${springBootVersion}" compile group: 'org.springframework.boot', name: 'spring-boot-starter-freemarker', version: "${springBootVersion}" compile group: 'org.springframework.boot', name: 'spring-boot-starter-log4j2', version: "${springBootVersion}" compile group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: "${springBootVersion}" compile group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat', version: "${springBootVersion}" testCompile group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: "${springBootVersion}" //saml compile group: 'org.opensaml', name: 'opensaml', version: '2.6.4' compile group: 'org.opensaml', name: 'openws', version: '1.5.4' compile group: 'org.opensaml', name: 'xmltooling', version: '1.4.4' //jose-jwt compile group: 'com.nimbusds', name: 'nimbus-jose-jwt', version: '8.10' compile group: 'net.jcip', name: 'jcip-annotations', version: '1.0' compile group: 'net.minidev', name: 'json-smart', version: '2.3' compile group: 'net.minidev', name: 'asm', version: '1.0.2' //oauth third party JustAuth compile group: 'cn.hutool', name: 'hutool-core', version: '5.2.2' compile group: 'cn.hutool', name: 'hutool-http', version: '5.2.2' compile group: 'me.zhyd.oauth', name: 'JustAuth', version: '1.13.2' //common compile group: 'org.javassist', name: 'javassist', version: '3.23.0-GA' compile group: 'org.owasp.esapi', name: 'esapi', version: '2.2.0.0' compile group: 'com.sun.mail', name: 'javax.mail', version: '1.6.2' compile group: 'javax.activation', name: 'activation', version: '1.1.1' compile group: 'javax.annotation', name: 'javax.annotation-api', version: '1.3.2' compile group: 'javax.transaction', name: 'jta', version: '1.1' compile group: 'javax.transaction', name: 'javax.transaction-api', version: '1.3' compile group: 'javax.validation', name: 'validation-api', version: '2.0.1.Final' compile group: 'javax.xml', name: 'jsr173', version: '1.0' compile group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.1' compile group: 'com.sun.xml.bind', name: 'jaxb-core', version: '2.3.0.1' compile group: 'com.sun.xml.bind', name: 'jaxb-impl', version: '2.3.2' compile group: 'com.sun.xml.bind', name: 'jaxb-xjc', version: '2.3.2' //crypto compile group: 'org.bouncycastle', name: 'bcpkix-jdk15on', version: "${bouncycastleVersion}" compile group: 'org.bouncycastle', name: 'bcprov-jdk15on', version: "${bouncycastleVersion}" compile group: 'org.bouncycastle', name: 'bcprov-ext-jdk15on', version: "${bouncycastleVersion}" compile group: 'com.google.crypto.tink', name: 'tink', version: '1.2.2' //kaptcha compile group: 'com.jhlabs', name: 'filters', version: '2.0.235-1' compile group: 'com.github.penggle', name: 'kaptcha', version: '2.3.2' //json compile group: 'com.google.code.gson', name: 'gson', version: '2.8.6' compile group: 'org.codehaus.jackson', name: 'jackson-all', version: '1.8.5' compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: "${jacksonVersion}" compile group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: "${jacksonVersion}" compile group: 'com.fasterxml.jackson.core', name: 'jackson-annotations', version: "${jacksonVersion}" compile group: 'com.fasterxml', name: 'classmate', version: '1.5.0' compile group: 'com.alibaba', name: 'fastjson', version: '1.2.66' //reactive compile group: 'org.reactivestreams', name: 'reactive-streams', version: '1.0.2' compile group: 'io.projectreactor', name: 'reactor-core', version: '3.2.10.RELEASE' compile group: 'eu.tekul', name: 'szxcvbn_2.9.2', version: '0.2' //quartz compile group: 'org.quartz-scheduler', name: 'quartz', version: '2.3.2' //database compile group: 'mysql', name: 'mysql-connector-java', version: '5.1.48' compile group: 'com.alibaba', name: 'druid', version: '1.1.21' compile group: 'redis.clients', name: 'jedis', version: '3.2.0' compile group: 'org.ehcache', name: 'ehcache', version: '3.8.1' compile group: 'javax.cache', name: 'cache-api', version: '1.1.0' //mybatis compile group: 'org.mybatis', name: 'mybatis', version: '3.5.4' compile group: 'org.mybatis', name: 'mybatis-spring', version: '2.0.4' //hibernate compile group: 'org.hibernate.validator', name: 'hibernate-validator', version: "${hibernateVersion}" compile group: 'org.hibernate', name: 'hibernate-validator-cdi', version: "${hibernateVersion}" compile group: 'org.hibernate.validator', name: 'hibernate-validator-annotation-processor', version: "${hibernateVersion}" //usefull compile group: 'joda-time', name: 'joda-time', version: '2.10.5' compile group: 'org.yaml', name: 'snakeyaml', version: '1.26' compile group: 'net.sourceforge.nekohtml', name: 'nekohtml', version: '1.9.22' compile group: 'org.jdom', name: 'jdom', version: '2.0.2' compile group: 'com.google.zxing', name: 'core', version: '3.4.0' compile group: 'com.google.guava', name: 'guava', version: '28.2-jre' compile group: 'ognl', name: 'ognl', version: '3.2.14' compile group: 'cglib', name: 'cglib', version: '3.3.0' compile group: 'org.ow2.asm', name: 'asm', version: '7.3.1' compile group: 'aopalliance', name: 'aopalliance', version: '1.0' compile group: 'org.aspectj', name: 'aspectjtools', version: '1.9.4' compile group: 'dom4j', name: 'dom4j', version: '1.6.1' compile group: 'xalan', name: 'serializer', version: '2.7.2' compile group: 'xml-resolver', name: 'xml-resolver', version: '1.2' compile group: 'org.apache.santuario', name: 'xmlsec', version: '1.5.8' compile group: 'org.ogce', name: 'xpp3', version: '1.1.6' compile group: 'com.thoughtworks.xstream', name: 'xstream', version: '1.4.10' //local jars compile fileTree(dir: "${rootDir}/maxkey-lib/", include: '*.jar') //tomcat embed compile group: 'org.apache.tomcat.embed', name: 'tomcat-embed-core', version: '9.0.29' compile group: 'org.apache.tomcat.embed', name: 'tomcat-embed-logging-juli', version: '8.5.2' } jar { def currentTime = java.time.ZonedDateTime.now() manifest { attributes( "Implementation-Title": project.name, "Implementation-Vendor": project.vendor, "Created-By": project.author, "Implementation-Date": currentTime, "Implementation-Version": project.version) } } task checkenv{ println 'check env for project ' //项目名 println project.name //项目相对路径 println project.path //项目描述 println project.description //项目的绝对路径 println project.projectDir //项目的build文件绝对路径 println "buildDir " +project.buildDir //项目所在的group println project.group //项目的版本号 println project.version //项目的ant对象 println project.ant } task copyjar2Release(type: Copy) { println "$buildDir/libs/ to $rootDir/build/maxkey-jars/" into "$rootDir/build/maxkey-jars/" from "$buildDir/libs/" include '*.jar' } task copyDepJars(type: Copy){ from configurations.runtime into "$rootDir/build/maxkey-depjars" } task copydemoWar2Release(type: Copy) { into "$rootDir/build/demowar/" from "$buildDir/libs/" include '*demo*.war' } task copyWar2Release(type: Copy) { into "$rootDir/build/maxkey-war" from "$buildDir/libs/" include '*web*.war' } task copyotherWar2Release(type: Copy) { into "$rootDir/build/" from "$buildDir/libs/" } task buildRelease(dependsOn:['build','jar','copyjar2Release','copyDepJars']) { println 'Build MaxKey '+project.name +' complete .' } } // In this section you declare the dependencies for your production and test code dependencies { }