1
1
plugins {
2
- id ' java'
3
- id ' application'
4
- id ' edu.sc.seis.launch4j' version ' 2.5.4'
5
- id ' org.openjfx.javafxplugin' version ' 0.1.0'
6
- id ' com.github.johnrengelman.shadow' version ' 7.1.2'
2
+ id " java"
3
+ id " application"
4
+ id " edu.sc.seis.launch4j" version " 2.5.4"
5
+ id " org.openjfx.javafxplugin" version " 0.1.0"
6
+ id " com.github.johnrengelman.shadow" version " 7.1.2"
7
7
}
8
8
9
9
group = ss_group
10
- version = ' 4.3.1'
10
+ version = " 4.3.1"
11
11
12
12
repositories {
13
13
mavenCentral()
14
14
}
15
15
16
16
dependencies {
17
- implementation project(' :build-shared' ) // This makes shared classes available
17
+ implementation project(" :build-shared" ) // This makes shared classes available
18
18
19
- implementation ' com.eclipsesource.minimal-json:minimal-json:0.9.5'
20
- implementation ' info.picocli:picocli:4.7.5'
21
- annotationProcessor ' info.picocli:picocli-codegen:4.7.5'
22
- implementation fileTree(dir : ' libs' , include : ' *.jar' )
19
+ implementation " com.eclipsesource.minimal-json:minimal-json:0.9.5"
20
+ implementation " info.picocli:picocli:4.7.5"
21
+ annotationProcessor " info.picocli:picocli-codegen:4.7.5"
22
+ implementation fileTree(dir : " libs" , include : " *.jar" )
23
23
24
24
// Dependencies (GUI)
25
25
implementation " org.openjfx:javafx-controls:$javafx . version :win"
@@ -39,7 +39,7 @@ application {
39
39
40
40
javafx {
41
41
version = " 17.0.13"
42
- modules = [' javafx.controls' ]
42
+ modules = [" javafx.controls" ]
43
43
}
44
44
45
45
jar {
48
48
49
49
// Configure the shadowJar task (with JavaFX)
50
50
shadowJar {
51
- archiveBaseName = ' server-sync'
52
- archiveClassifier = ' client'
51
+ archiveBaseName = " server-sync"
52
+ archiveClassifier = " client"
53
53
54
54
// Don't minimize with JavaFX
55
55
// minimize() //Comment to build GUI
@@ -59,20 +59,20 @@ shadowJar {
59
59
}
60
60
61
61
manifest {
62
- attributes ' Main-Class' : ss_main_class
63
- attributes ' Implementation-Version' : project. version
62
+ attributes " Main-Class" : ss_main_class
63
+ attributes " Implementation-Version" : project. version
64
64
}
65
65
66
66
dependencies {
67
- exclude ' forge*.jar'
67
+ exclude " forge*.jar"
68
68
// exclude '**/*javafx*/**' //Comment to build GUI
69
69
}
70
70
}
71
71
72
72
createExe {
73
73
jarTask = shadowJar
74
74
mainClassName = ss_main_class
75
- outfile = ' ServerSyncClient.exe'
75
+ outfile = " ServerSyncClient.exe"
76
76
icon = " ${ rootDir} /build-shared/src/main/resources/ServersyncLogo.ico"
77
77
copyConfigurable = shadowJar. outputs. files
78
78
supportUrl = " https://github.com/superzanti/ServerSync"
@@ -104,3 +104,16 @@ distributions {
104
104
}
105
105
}
106
106
}
107
+
108
+ tasks. register(" assembleGithubArtifacts" , Copy ) {
109
+ group = " distribution"
110
+ dependsOn createExe
111
+ from layout. buildDirectory. dir(" launch4j/lib" ), layout. buildDirectory. file(" launch4j" )
112
+ into file(" $rootDir /publish/github" )
113
+ exclude " lib"
114
+ }
115
+
116
+ clean {
117
+ delete " $rootDir /publish"
118
+ }
119
+
0 commit comments