11plugins {
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"
77}
88
99group = ss_group
10- version = ' 4.3.1'
10+ version = " 4.3.1"
1111
1212repositories {
1313 mavenCentral()
1414}
1515
1616dependencies {
17- implementation project(' :build-shared' ) // This makes shared classes available
17+ implementation project(" :build-shared" ) // This makes shared classes available
1818
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" )
2323
2424 // Dependencies (GUI)
2525 implementation " org.openjfx:javafx-controls:$javafx . version :win"
@@ -39,7 +39,7 @@ application {
3939
4040javafx {
4141 version = " 17.0.13"
42- modules = [' javafx.controls' ]
42+ modules = [" javafx.controls" ]
4343}
4444
4545jar {
4848
4949// Configure the shadowJar task (with JavaFX)
5050shadowJar {
51- archiveBaseName = ' server-sync'
52- archiveClassifier = ' client'
51+ archiveBaseName = " server-sync"
52+ archiveClassifier = " client"
5353
5454 // Don't minimize with JavaFX
5555 // minimize() //Comment to build GUI
@@ -59,20 +59,20 @@ shadowJar {
5959 }
6060
6161 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
6464 }
6565
6666 dependencies {
67- exclude ' forge*.jar'
67+ exclude " forge*.jar"
6868 // exclude '**/*javafx*/**' //Comment to build GUI
6969 }
7070}
7171
7272createExe {
7373 jarTask = shadowJar
7474 mainClassName = ss_main_class
75- outfile = ' ServerSyncClient.exe'
75+ outfile = " ServerSyncClient.exe"
7676 icon = " ${ rootDir} /build-shared/src/main/resources/ServersyncLogo.ico"
7777 copyConfigurable = shadowJar. outputs. files
7878 supportUrl = " https://github.com/superzanti/ServerSync"
@@ -104,3 +104,16 @@ distributions {
104104 }
105105 }
106106}
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