-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathbuild.gradle
117 lines (93 loc) · 3.27 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
group 'org.owen'
version '1.0.2'
apply plugin: 'groovy'
apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'maven-publish'
sourceCompatibility = 1.8
repositories {
maven { url 'http://repo.spring.io/milestone' }
maven { url 'https://jitpack.io' }
mavenCentral()
}
ext{
slf4jVersion = '1.7.21'
log4j2Version = '2.5'
commonsLogging = '1.2'
nettyVersion='4.1.32.Final'
reactorCoreVersion='3.2.3.RELEASE'
reactorNettyVersion='0.7.12.RELEASE'
}
dependencies {
// junit
testCompile group: 'junit', name: 'junit', version: '4.12'
// reactor-core
compile "io.projectreactor:reactor-core:${reactorCoreVersion}"
testCompile("io.projectreactor:reactor-test:${reactorCoreVersion}")
// reactor-netty
compile("io.projectreactor.ipc:reactor-netty:${reactorNettyVersion}")
// compile group: 'io.projectreactor.ipc', name: 'reactor-netty', version: '0.7.12.RELEASE'
compile("io.netty:netty-all:${nettyVersion}"){
exclude group: 'log4j', module:'log4j'
exclude group: 'commons-logging', module: 'commons-logging'
exclude group: 'org.slf4j', module: 'slf4j-api'
}
// SLF4J-Log4j2
compile("commons-logging:commons-logging:${commonsLogging}")
compile("org.slf4j:slf4j-api:${slf4jVersion}")
compile("org.apache.logging.log4j:log4j-api:${log4j2Version}")
compile("org.apache.logging.log4j:log4j-core:${log4j2Version}")
compile("org.apache.logging.log4j:log4j-slf4j-impl:${log4j2Version}")
compile group: 'javax.sip', name: 'jain-sip-ri', version: '1.3.0-32'
compile group: 'com.google.code.gson', name: 'gson', version: '2.8.3'
// https://mvnrepository.com/artifact/com.netflix.eureka/eureka-client
runtime group: 'com.netflix.eureka', name: 'eureka-client', version: '1.9.3'
// https://mvnrepository.com/artifact/redis.clients/jedis
testCompile group: 'redis.clients', name: 'jedis', version: '2.9.0'
// https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient
testCompile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.5'
// https://mvnrepository.com/artifact/org.apache.httpcomponents/httpasyncclient
testCompile group: 'org.apache.httpcomponents', name: 'httpasyncclient', version: '4.1.3'
// Spock
testCompile('net.bytebuddy:byte-buddy:1.6.4')
compile 'org.spockframework.spock:spock-core:spock-1.1'
compile "org.projectlombok:lombok:1.18.2"
}
sourceSets{
main {
java {
srcDir 'src/main/java'
}
resources {
srcDir 'src/main/resources'
exclude 'application.json'
exclude 'log4j2.xml'
}
}
}
jar {
manifest {
attributes 'Title': 'Hermes', 'Version': 1.0, 'Main-Class': 'org.owen.hermes.Application'
}
baseName 'Hermes'
dependsOn configurations.runtime
from {
configurations.compile.collect {it.isDirectory()? it: zipTree(it)}
}
exclude '**/resources/log4j2.xml'
}
// javadoc.jar generation
task javadocJar (type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
// sources.jar generation
task sourceJar (type : Jar) {
classifier = 'sources'
from sourceSets.main.java
}
artifacts {
archives jar
archives sourceJar
archives javadocJar
}