-
Notifications
You must be signed in to change notification settings - Fork 55
/
Copy pathbuild.gradle
136 lines (114 loc) · 3.58 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
// 编译脚本
buildscript {
ext {
springBootVersion = "2.7.0"
mybatisPlusVersion = "3.5.8"
solonVersion = "3.0.1"
}
// 仓库配置
repositories {
mavenLocal()
maven { url 'https://maven.aliyun.com/repository/central' }
maven { url 'https://maven.aliyun.com/repository/spring' }
maven { url 'https://maven.aliyun.com/repository/google' }
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
classpath("com.vanniktech:gradle-maven-publish-plugin:0.29.0")
}
}
description = "FlowLong BPM"
// 项目配置
allprojects {
group APP_GROUP
version APP_VERSION
}
// 子模块配置
subprojects {
apply plugin: 'java-library'
apply plugin: 'com.vanniktech.maven.publish'
apply plugin: 'signing'
apply plugin: 'io.spring.dependency-management'
// 仓库配置
repositories {
mavenLocal()
maven { url 'https://maven.aliyun.com/repository/central' }
maven { url 'https://maven.aliyun.com/repository/spring' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
mavenCentral()
}
// 依赖管理
dependencyManagement {
imports {
mavenBom "org.springframework.boot:spring-boot-dependencies:${springBootVersion}"
}
dependencies {
dependency("mysql:mysql-connector-java:8.0.33")
// orm db
dependency("com.baomidou:mybatis-plus-boot-starter:${mybatisPlusVersion}")
dependency("com.baomidou:mybatis-plus-core:${mybatisPlusVersion}")
}
}
// 依赖配置
dependencies {
// 日志
api("org.slf4j:slf4j-api")
// lombok
compileOnly("org.projectlombok:lombok")
annotationProcessor("org.projectlombok:lombok")
testAnnotationProcessor("org.projectlombok:lombok")
testCompileOnly("org.projectlombok:lombok")
// junit
testCompileOnly("org.springframework.boot:spring-boot-starter-test")
}
// 编译环境 JDK-1.8+
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
tasks.named('test') {
useJUnitPlatform()
}
tasks.withType(JavaCompile).configureEach {
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:-serial"
options.encoding = 'UTF-8'
options.warnings = false
options.deprecation = true
options.compilerArgs += ["-parameters"]
}
tasks.withType(GenerateModuleMetadata).configureEach {
enabled = false
}
tasks.register('sourcesJar', Jar) {
dependsOn classes
archiveClassifier = 'sources'
from sourceSets.main.allSource
}
javadoc {
options {
encoding "UTF-8"
charSet 'UTF-8'
author true
version true
failOnError false
links "https://docs.oracle.com/javase/8/docs/api"
}
}
tasks.withType(MavenPublication).configureEach {
doFirst {
options.skipCertificateChecks = true
}
}
tasks.register('javadocJar', Jar) {
archiveClassifier = 'javadoc'
from javadoc
}
// 编译任务忽略案例模块
afterEvaluate { project ->
if (project.name == 'flowlong-spring-boot-example' || project.name == 'flowlong-solon-example') {
project.tasks.all {
it.enabled = false
}
}
}
}