kehui/build.gradle
2024-07-02 16:59:52 +08:00

155 lines
4.6 KiB
Groovy

import com.bmuschko.gradle.docker.tasks.image.DockerBuildImage
import com.bmuschko.gradle.docker.tasks.image.Dockerfile
buildscript {
repositories {
mavenLocal()
maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
// maven { url "https://corp.xqopen.cn/repo/repository/maven-public/" }
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:1.5.8.RELEASE")
classpath 'com.bmuschko:gradle-docker-plugin:3.2.0'
}
}
apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'org.springframework.boot'
apply plugin: 'com.bmuschko.docker-remote-api'
sourceCompatibility = 1.8
targetCompatibility = 1.8
[compileJava, compileTestJava, javadoc]*.options*.encoding = 'UTF-8'
ext {
springBootVersion = '1.5.8.RELEASE'
springfoxVersion = '2.6.1'
junit4Version = '4.12'
junitVintageVersion = '4.12.1'
dockerPath = "${buildDir}/docker/"
activitiVersion = '5.22.0'
}
repositories {
mavenLocal()
maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
// maven { url "https://corp.xqopen.cn/repo/repository/maven-public/" }
mavenCentral()
}
dependencies {
compile "org.quartz-scheduler:quartz:2.2.3"
compile "org.springframework:spring-context-support:4.3.12.RELEASE"
compile "org.springframework.boot:spring-boot-starter-web:${springBootVersion}"
compile "org.springframework.boot:spring-boot-starter-data-jpa:${springBootVersion}"
compile('org.springframework.boot:spring-boot-starter-log4j2')
compile "com.baomidou:mybatisplus-spring-boot-starter:1.0.4"
compile "com.baomidou:mybatis-plus:2.1.4"
compile "org.postgresql:postgresql:42.1.4"
compile "org.apache.velocity:velocity:1.7"
compile 'com.alibaba:druid-spring-boot-starter:1.1.4'
compile 'io.springfox:springfox-swagger2:2.7.0'
compile 'io.springfox:springfox-swagger-ui:2.7.0'
compile 'com.alibaba:fastjson:1.2.39'
compile 'joda-time:joda-time:2.9.9'
compile "org.projectlombok:lombok:1.16.18"
// annotationProcessor 'org.projectlombok:lombok:1.18.2'
// compileOnly 'org.projectlombok:lombok:1.18.2'
// testAnnotationProcessor 'org.projectlombok:lombok:1.18.2'
// testCompileOnly 'org.projectlombok:lombok:1.18.2'
compile 'org.activiti:activiti-spring-boot-starter-basic:5.22.0'
// compile "org.activiti:activiti-engine:${activitiVersion}"
// compile "org.activiti:activiti-bpmn-layout:${activitiVersion}"
// compile "org.activiti:activiti-spring:${activitiVersion}"
// compile "org.activiti:activiti-engine:${activitiVersion}"
// compile "org.activiti:activiti-bpmn-model:${activitiVersion}"
compile 'commons-beanutils:commons-beanutils:1.8.3'
compile 'commons-io:commons-io:2.4'
compile 'com.google.code.gson:gson:2.2.4'
compile 'org.apache.poi:poi:3.15'
compile 'org.apache.poi:poi-ooxml:3.15'
compile 'com.jcabi:jcabi-manifests:1.1'
//compile 'com.sun.mail:javax.mail:1.5.4'
compile('javax.mail:mail:1.4.7')
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile "org.springframework.boot:spring-boot-starter-test"
testCompile "junit:junit:${junit4Version}"
testRuntime "org.junit.vintage:junit-vintage-engine:${junitVintageVersion}"
}
sourceSets {
main {
resources {
srcDir "src/main/java/" //将mybatis中的xml打入最终的classpath中
srcDir "src/main/resources/"
}
}
}
configurations {
all*.exclude module: 'spring-boot-starter-logging'
all*.exclude module: 'logback-classic'
//all*.exclude module: 'log4j-over-slf4j'
}
jar {
manifest {
attributes 'Implementation-Title': getProject().getName(), 'Implementation-Version': getDate()
}
}
String getDate() {
Date date = new Date();
String dates = date.format("yyyyMMdd", TimeZone.getTimeZone("Asia/Shanghai"));
return dates;
}
version = '0.0.1-SNAPSHOT'
group = 'kehui'
//archivesBaseName = 'kehui-server'
/**
* docker 打镜像
*/
// 拷贝jar包到docker编译目录
task copyJarToDocker(type: Copy) {
dependsOn 'build'
from "${buildDir}/libs/${rootProject.name}-${version}.jar"
into "${dockerPath}/"
}
// 创建Dockerfile
task createDockerfile(type: Dockerfile) {
dependsOn 'copyJarToDocker'
destFile = project.file("${dockerPath}/Dockerfile")
from 'openjdk:8-jdk-alpine'
maintainer 'Jerry Zhu "jerry@xqopen.com"'
String jarName = "${rootProject.name}-${version}.jar"
addFile("${jarName}", "/${jarName}")
environmentVariable("LANG", "C.UTF-8")
//environmentVariable("JAVA_OPTS", "'-Duser.timezone=Asia/Shanghai'")
defaultCommand "java", "-Duser.timezone=Asia/Shanghai", "-jar", "/${jarName}"
}
// 编译docker镜像
task buildImage(type: DockerBuildImage) {
dependsOn 'createDockerfile'
inputDir = createDockerfile.destFile.parentFile
tag = "${rootProject.name}:latest"
labels = [
"com.example.group": "kehui",
]
}