forked from polypheny/Query-to-File
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
111 lines (96 loc) · 3.61 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
buildscript {
repositories {
mavenCentral()
jcenter()
maven {
url 'https://plugins.gradle.org/m2/'
}
}
dependencies {
// Shadowing; used to make a fat jar (https://github.com/johnrengelman/shadow)
classpath group: "com.github.jengelman.gradle.plugins", name: "shadow", version: "6.1.0"
// Lombok (https://plugins.gradle.org/plugin/io.freefair.lombok)
classpath group: 'io.freefair.gradle', name: 'lombok-plugin', version: '5.3.0'
}
}
plugins {
id 'java'
id 'application'
id 'org.openjfx.javafxplugin' version '0.0.9'
}
apply plugin: 'java'
apply plugin: 'io.freefair.lombok'
apply plugin: 'com.github.johnrengelman.shadow'
group "org.polypheny"
description = "Polypheny Query-to-File allows to mount a table or the result of a query as file system."
def versionMajor = 0
def versionMinor = 9
def versionQualifier = "-SNAPSHOT"
version = versionMajor + "." + versionMinor + versionQualifier
mainClassName = 'org.polypheny.qtf.Main'
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
sourceCompatibility = '11'
targetCompatibility = '11'
}
repositories {
mavenLocal()
maven {
// DBIS Nexus
url 'https://dbis-nexus.dmi.unibas.ch/repository/maven2/'
}
jcenter()
mavenCentral()
}
dependencies {
implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.30' // License: MIT
implementation group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.14.1' // License: Apache 2.0
implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.14.1' // License: Apache 2.0
implementation group: 'com.github.serceman', name: 'jnr-fuse', version: '0.5.5' // License: MIT
implementation group: "org.apache.commons", name: "commons-lang3", version: '3.11' // License: Apache 2.0
implementation group: "com.google.code.gson", name: "gson", version: '2.8.6' // License: Apache 2.0
implementation group: 'com.konghq', name: 'unirest-java', version: '3.11.09' // License: MIT
implementation group: 'org.java-websocket', name: 'Java-WebSocket', version: '1.5.1' // License: MIT
runtimeOnly group: 'org.openjfx', name: 'javafx-graphics', version: '15.0.1', classifier: 'win' // License: GPL with classpath exception
runtimeOnly group: 'org.openjfx', name: 'javafx-graphics', version: '15.0.1', classifier: 'mac' // License: GPL with classpath exception
runtimeOnly group: 'org.openjfx', name: 'javafx-graphics', version: '15.0.1', classifier: 'linux' // License: GPL with classpath exception
}
test {
useJUnitPlatform()
}
javafx {
version = '15.0.1'
modules = [ 'javafx.controls', 'javafx.fxml']
}
/**
* JARs
*/
jar {
manifest {
attributes "Manifest-Version": "1.0"
attributes "Copyright": "The Polypheny Project (polypheny.org)"
attributes "Version": project.version
attributes "Main-Class": mainClassName
attributes "Multi-Release": "true"
attributes "Implementation-Version": project.version
}
}
task sourcesJar(type: Jar, dependsOn: classes) {
classifier "sources"
from sourceSets.main.allSource
}
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier "javadoc"
from javadoc.destinationDir
}
shadowJar {
zip64 true
classifier = ""
}
assemble.dependsOn shadowJar
artifacts {
//archives jar // regular jar containing only the compiled source
archives shadowJar // fat jar which additionally contains all dependencies
archives sourcesJar // jar file containing the java doc files
archives javadocJar // jar file containing the source files
}