-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
113 lines (95 loc) · 3.74 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
plugins {
id 'java'
id 'eclipse'
id 'idea'
id 'application'
id 'org.openjfx.javafxplugin' version '0.0.7'
id "com.github.ben-manes.versions" version "0.21.0"
id 'org.beryx.jlink' version '2.10.4'
id "com.vanniktech.dependency.graph.generator" version "0.5.0"
}
repositories {
mavenLocal()
maven { url = 'http://jcenter.bintray.com' }
maven { url = 'http://repo.maven.apache.org/maven2' }
maven { url 'https://projectlombok.org/edge-releases' }
}
dependencies {
implementation 'org.controlsfx:controlsfx:11.0.0', {
exclude group: 'org.openjfx'
}
implementation 'com.jfoenix:jfoenix:9.0.9'
implementation 'org.fxmisc.richtext:richtextfx:0.10.1'
implementation group: 'eu.hansolo', name: 'Medusa', version: '11.1', { //fx gauges
exclude group: 'org.openjfx'
}
compile group: 'eu.hansolo', name: 'tilesfx', version: '11.1', { //fx tiles
exclude group: 'org.openjfx'
exclude group: 'org.hamcrest'
}
//implementation 'com.github.almasb:fxgl:11.1-beta'
//implementation 'com.1stleg:jnativehook:2.1.0' //global key listeners
implementation 'commons-io:commons-io:2.6'
implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.9'
implementation group: 'com.google.guava', name: 'guava', version: '27.1-jre'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'org.json:json:20180813'
implementation group: 'org.glassfish.jaxb', name: 'jaxb-xjc', version: '2.3.2'
implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.11.2'
implementation group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.11.2'
compileOnly 'org.projectlombok:lombok:1.18.8'
annotationProcessor 'org.projectlombok:lombok:1.18.8'
compileOnly group: 'org.mapstruct', name: 'mapstruct-processor', version: '1.3.0.Final'
annotationProcessor group: 'org.mapstruct', name: 'mapstruct-processor', version: '1.3.0.Final'
}
javafx {
modules = [ 'javafx.controls',
'javafx.fxml'
]
}
eclipse {
classpath {
file {
whenMerged {
entries.findAll {
it.kind == 'src' || it.kind == 'lib'
}.each { it.entryAttributes['module'] = 'true' }
}
}
}
}
group = 'pl.hopelew'
version = '0.1'
description = 'jRPG NoName Game'
ext.moduleName = 'jrpg'
mainClassName = moduleName + '/pl.hopelew.jrpg.Main'
sourceCompatibility = '11'
targetCompatibility = '11'
tasks.withType(JavaCompile) {
options.encoding = 'UTF-8'
}
jar {
manifest {
attributes 'Main-Class': mainClassName
attributes 'Automatic-Module-Name': moduleName
}
duplicatesStrategy(DuplicatesStrategy.EXCLUDE)
// inputs.property("moduleName", moduleName)
}
jlink {
options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages', '--bind-services']
launcher {
name = 'jrpg'
jvmArgs = ['-Djavax.xml.bind.JAXBContextFactory=com.sun.xml.bind.v2.ContextFactory', '-Dcom.sun.management.jmxremote', '--add-exports javafx.controls/com.sun.javafx.scene.control.behavior=com.jfoenix', '--add-exports javafx.controls/com.sun.javafx.scene.control=com.jfoenix', '--add-exports javafx.base/com.sun.javafx.binding=com.jfoenix', '--add-exports javafx.graphics/com.sun.javafx.stage=com.jfoenix', '--add-exports javafx.base/com.sun.javafx.event=com.jfoenix', '--add-exports javafx.graphics/com.sun.javafx.scene=com.jfoenix', '-Dprism.verbose=true']
}
addExtraDependencies("javafx")
imageName = 'jrpg-SNAPSHOT'
forceMerge 'log4j-api'
}
/*
tasks.jlink.doLast {
copy {
from('src/main/resources')
into("$buildDir/image/bin")
}
} */