-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
76 lines (62 loc) · 1.81 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
//
// Install the gradle Ice Builder plug-in from the plug-in portal
//
plugins {
id 'com.zeroc.gradle.ice-builder.slice' version '1.4.7' apply false
}
group 'cl.disc.ucn.pdis'
version '1.0-SNAPSHOT'
subprojects {
//
// Apply Java and Ice Builder plug-ins to all sub-projects
//
apply plugin: 'java'
apply plugin: 'com.zeroc.gradle.ice-builder.slice'
//
// Both Client and Server projects share the Printer.ice Slice definitions
//
slice {
java {
files = [file("../slice/Printer.ice"), file("../slice/Model.ice")]
args = "--debug"
logger.lifecycle("File: ${files}")
}
}
//
// Use Ice JAR files from maven central repository
//
repositories {
mavenCentral()
}
//
// Both Client and Server depend only on Ice JAR
//
dependencies {
// JUnit
testCompile 'junit:junit:4.12'
// Zero ICE
implementation 'com.zeroc:ice:3.7.2'
// Simple Logging Facade 4 Java
implementation 'org.slf4j:slf4j-api:1.7.25'
// Logback
implementation 'ch.qos.logback:logback-classic:1.2.3'
// Lombok!
compileOnly 'org.projectlombok:lombok:1.18.6'
annotationProcessor 'org.projectlombok:lombok:1.18.6'
// Apache Commons Lang
implementation 'org.apache.commons:commons-lang3:3.8.1'
// ZonedTimeDate (Java 8 in Java 7)
implementation "org.threeten:threetenbp:1.3.8"
}
//
// Create a JAR file with the appropriate Main-Class and Class-Path attributes
//
jar {
manifest {
attributes(
"Main-Class": project.name.capitalize(),
"Class-Path": configurations.runtime.resolve().collect { it.toURI() }.join(' ')
)
}
}
}