From 628cf4e6a05616b20d0ef60d5b97a784d7c21e5c Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:04:23 +0300 Subject: [PATCH 01/38] build: run workflow on pull request --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index a267287..c8562a4 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,6 +1,6 @@ name: Java CI -on: [push] +on: [push, pull_request] jobs: buildJar: From a199315651e0dc7dfefe93ac6e40582876033795 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:08:53 +0300 Subject: [PATCH 02/38] build: try using full path --- build.gradle | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 6b387b2..e2f9b43 100644 --- a/build.gradle +++ b/build.gradle @@ -10,6 +10,7 @@ buildscript{ //the build number that this mod is made for mindustryVersion = 'v146' jabelVersion = "93fde537c7" + sdkVersion = "33.0.0" //windows sucks isWindows = System.getProperty("os.name").toLowerCase().contains("windows") sdkRoot = System.getenv("ANDROID_HOME") ?: System.getenv("ANDROID_SDK_ROOT") @@ -72,8 +73,12 @@ tasks.register('jarAndroid') { def d8 = isWindows ? "d8.bat" : "d8" +// def d8Path = d8 + // for some reason d8 is not in path in CI... + def d8Path = $sdkRoot/build-tools/$sdkVersion/$d8 + //dex and desugar files - this requires d8 in your PATH - "$d8 $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" + "$d8Path $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" .execute(null, new File("$project.rootProject.layout.buildDirectory/libs")).waitForProcessOutput(System.out, System.err) } } From 4330660e9ce96e99e8d360f1d95396f0faace69c Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:10:54 +0300 Subject: [PATCH 03/38] build: it should be string... --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index e2f9b43..4b18f4f 100644 --- a/build.gradle +++ b/build.gradle @@ -75,7 +75,7 @@ tasks.register('jarAndroid') { // def d8Path = d8 // for some reason d8 is not in path in CI... - def d8Path = $sdkRoot/build-tools/$sdkVersion/$d8 + def d8Path = "$sdkRoot/build-tools/$sdkVersion/$d8" //dex and desugar files - this requires d8 in your PATH "$d8Path $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" From 7b9937f6d0ffc3c475ad782870e20a8681ae8acb Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:14:33 +0300 Subject: [PATCH 04/38] build: only run CI on master push or pull request --- .github/workflows/main.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c8562a4..b6db301 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,6 +1,10 @@ name: Java CI -on: [push, pull_request] +on: + push: + branches: + - master + pull_request: jobs: buildJar: From 130a58fcb2aa22180e5781f1d1c2820d1b9f1faf Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:15:43 +0300 Subject: [PATCH 05/38] build: wrong sdk version --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 4b18f4f..d8d3795 100644 --- a/build.gradle +++ b/build.gradle @@ -10,7 +10,7 @@ buildscript{ //the build number that this mod is made for mindustryVersion = 'v146' jabelVersion = "93fde537c7" - sdkVersion = "33.0.0" + sdkVersion = "34.0.0" //windows sucks isWindows = System.getProperty("os.name").toLowerCase().contains("windows") sdkRoot = System.getenv("ANDROID_HOME") ?: System.getenv("ANDROID_SDK_ROOT") From 0ac7a4105c8b47c0ef455df17ce495a5eda05453 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:18:28 +0300 Subject: [PATCH 06/38] build: ls android sdk files --- .github/workflows/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b6db301..23ba906 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -19,6 +19,7 @@ jobs: - name: Set up PATH run: | echo "${ANDROID_HOME}/build-tools/34.0.0" >> $GITHUB_PATH + ls "${ANDROID_HOME}/build-tools/34.0.0" - name: Build mod jar run: ./gradlew deploy - name: Upload built jar file From e31383e932c9fb29559a0f90bf9a938eff42dd1f Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:19:24 +0300 Subject: [PATCH 07/38] build: echo updated path --- .github/workflows/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 23ba906..c7dace2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,8 +18,9 @@ jobs: java-version: 17 - name: Set up PATH run: | - echo "${ANDROID_HOME}/build-tools/34.0.0" >> $GITHUB_PATH ls "${ANDROID_HOME}/build-tools/34.0.0" + echo "${ANDROID_HOME}/build-tools/34.0.0" >> $GITHUB_PATH + echo "Updated PATH: $PATH" - name: Build mod jar run: ./gradlew deploy - name: Upload built jar file From 5f3fe008a7e078dc16a58645a14e096f9a0a1e2e Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:22:31 +0300 Subject: [PATCH 08/38] build: a --- build.gradle | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index d8d3795..96848db 100644 --- a/build.gradle +++ b/build.gradle @@ -73,12 +73,8 @@ tasks.register('jarAndroid') { def d8 = isWindows ? "d8.bat" : "d8" -// def d8Path = d8 - // for some reason d8 is not in path in CI... - def d8Path = "$sdkRoot/build-tools/$sdkVersion/$d8" - //dex and desugar files - this requires d8 in your PATH - "$d8Path $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" + "$d8 $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" .execute(null, new File("$project.rootProject.layout.buildDirectory/libs")).waitForProcessOutput(System.out, System.err) } } From 6ab731d786efff0842dd6b5af4dd4d17108c4527 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:25:20 +0300 Subject: [PATCH 09/38] build: add general information --- .github/workflows/main.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c7dace2..b0f33c4 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -21,6 +21,10 @@ jobs: ls "${ANDROID_HOME}/build-tools/34.0.0" echo "${ANDROID_HOME}/build-tools/34.0.0" >> $GITHUB_PATH echo "Updated PATH: $PATH" + - name: General information + run: | + java --version + d8 --version - name: Build mod jar run: ./gradlew deploy - name: Upload built jar file From 6368c348a6f2f855cf406f4356d8c776f20a82a2 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:36:42 +0300 Subject: [PATCH 10/38] build: lets try commandLine command --- build.gradle | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/build.gradle b/build.gradle index 96848db..6577f5a 100644 --- a/build.gradle +++ b/build.gradle @@ -58,9 +58,9 @@ configurations.configureEach { } } -tasks.register('jarAndroid') { +tasks.register('jarAndroid', Exec) { dependsOn "jar" - + workingDir "$project.rootProject.layout.buildDirectory/libs" doLast{ if(!sdkRoot || !new File(sdkRoot as String).exists()) throw new GradleException("No valid Android SDK found. Ensure that ANDROID_HOME is set to your Android SDK directory.") @@ -73,9 +73,17 @@ tasks.register('jarAndroid') { def d8 = isWindows ? "d8.bat" : "d8" + standardOutput = new ByteArrayOutputStream() + //dex and desugar files - this requires d8 in your PATH - "$d8 $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" - .execute(null, new File("$project.rootProject.layout.buildDirectory/libs")).waitForProcessOutput(System.out, System.err) + commandLine "$d8", + "$dependencies", + "--min-api", "14", + "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" + + ext.output = { + return standardOutput.toString() + } } } From a4f98b33e6a2333c31a7a34e5746c3e3219ec517 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:39:17 +0300 Subject: [PATCH 11/38] build: idk --- build.gradle | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/build.gradle b/build.gradle index 6577f5a..a0dbf15 100644 --- a/build.gradle +++ b/build.gradle @@ -58,9 +58,8 @@ configurations.configureEach { } } -tasks.register('jarAndroid', Exec) { +tasks.register('jarAndroid') { dependsOn "jar" - workingDir "$project.rootProject.layout.buildDirectory/libs" doLast{ if(!sdkRoot || !new File(sdkRoot as String).exists()) throw new GradleException("No valid Android SDK found. Ensure that ANDROID_HOME is set to your Android SDK directory.") @@ -73,16 +72,17 @@ tasks.register('jarAndroid', Exec) { def d8 = isWindows ? "d8.bat" : "d8" - standardOutput = new ByteArrayOutputStream() - - //dex and desugar files - this requires d8 in your PATH - commandLine "$d8", - "$dependencies", - "--min-api", "14", - "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" - - ext.output = { - return standardOutput.toString() + exec { + workingDir "$project.rootProject.layout.buildDirectory/libs" + standardOutput = new ByteArrayOutputStream() + //dex and desugar files - this requires d8 in your PATH + commandLine "$d8", + "$dependencies", + "--min-api", "14", + "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" + ext.output = { + return standardOutput.toString() + } } } } From fb322346a2237e2a59bd77c9afe75fcb3a3e32f0 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:41:56 +0300 Subject: [PATCH 12/38] build: whatever --- .github/workflows/main.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b0f33c4..e49414c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -26,7 +26,9 @@ jobs: java --version d8 --version - name: Build mod jar - run: ./gradlew deploy + run: | + chmod +x gradlew + ./gradlew deploy - name: Upload built jar file uses: actions/upload-artifact@v4 with: From 3b94996adf902e1b135f0183b58828692c4d30e4 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:49:21 +0300 Subject: [PATCH 13/38] build: which first --- build.gradle | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/build.gradle b/build.gradle index a0dbf15..452f6d0 100644 --- a/build.gradle +++ b/build.gradle @@ -72,17 +72,27 @@ tasks.register('jarAndroid') { def d8 = isWindows ? "d8.bat" : "d8" + //dex and desugar files - this requires d8 in your PATH + + whichOutputStream = new ByteArrayOutputStream() + project.exec { + commandLine 'which', "$d8" + standardOutput = whichOutputStream + workingDir project.rootDir + } + def d8Path = whichOutputStream.toString().trim() + + d8OutputStream = new ByteArrayOutputStream() exec { workingDir "$project.rootProject.layout.buildDirectory/libs" - standardOutput = new ByteArrayOutputStream() - //dex and desugar files - this requires d8 in your PATH - commandLine "$d8", + standardOutput = d8OutputStream + commandLine "$d8Path", "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" - ext.output = { - return standardOutput.toString() - } + } + ext.output = { + return d8OutputStream.toString() } } } From 769fa4ec471d9d1cb13b1fef95569e039e063b41 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:51:15 +0300 Subject: [PATCH 14/38] build: oops --- build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 452f6d0..d722568 100644 --- a/build.gradle +++ b/build.gradle @@ -74,7 +74,7 @@ tasks.register('jarAndroid') { //dex and desugar files - this requires d8 in your PATH - whichOutputStream = new ByteArrayOutputStream() + def whichOutputStream = new ByteArrayOutputStream() project.exec { commandLine 'which', "$d8" standardOutput = whichOutputStream @@ -82,7 +82,7 @@ tasks.register('jarAndroid') { } def d8Path = whichOutputStream.toString().trim() - d8OutputStream = new ByteArrayOutputStream() + def d8OutputStream = new ByteArrayOutputStream() exec { workingDir "$project.rootProject.layout.buildDirectory/libs" standardOutput = d8OutputStream From ee11edd2df50b198e3e3eb8ba4be59b2b5e6ac96 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:54:25 +0300 Subject: [PATCH 15/38] build: bash -c maybe??? --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index d722568..14056cc 100644 --- a/build.gradle +++ b/build.gradle @@ -86,7 +86,7 @@ tasks.register('jarAndroid') { exec { workingDir "$project.rootProject.layout.buildDirectory/libs" standardOutput = d8OutputStream - commandLine "$d8Path", + commandLine "bash", "-c", "$d8Path", "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" From 6268ebdb103b810d2126d38363285e1cb4719529 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:56:06 +0300 Subject: [PATCH 16/38] build: use ' instead of " ???? --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14056cc..1491f9a 100644 --- a/build.gradle +++ b/build.gradle @@ -86,7 +86,7 @@ tasks.register('jarAndroid') { exec { workingDir "$project.rootProject.layout.buildDirectory/libs" standardOutput = d8OutputStream - commandLine "bash", "-c", "$d8Path", + commandLine 'bash', "-c", "$d8Path", "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" From 3861ddeee5cf6c35a8a393b868f29c0cfae1600d Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 11:59:52 +0300 Subject: [PATCH 17/38] build: why.... --- build.gradle | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 1491f9a..f5ef6d3 100644 --- a/build.gradle +++ b/build.gradle @@ -86,7 +86,8 @@ tasks.register('jarAndroid') { exec { workingDir "$project.rootProject.layout.buildDirectory/libs" standardOutput = d8OutputStream - commandLine 'bash', "-c", "$d8Path", + executable 'sh' + args "-c", "$d8Path", "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" From 06dc89884aa1f3914eee990da7d818e31003acda Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:02:04 +0300 Subject: [PATCH 18/38] build: project.exec --- build.gradle | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index f5ef6d3..4e6d83c 100644 --- a/build.gradle +++ b/build.gradle @@ -83,13 +83,11 @@ tasks.register('jarAndroid') { def d8Path = whichOutputStream.toString().trim() def d8OutputStream = new ByteArrayOutputStream() - exec { + project.exec { workingDir "$project.rootProject.layout.buildDirectory/libs" standardOutput = d8OutputStream - executable 'sh' - args "-c", "$d8Path", - "$dependencies", - "--min-api", "14", + executable "$d8Path" + args "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" } ext.output = { From c644e0b40753e077c43ac636ac8075be368ddd95 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:06:00 +0300 Subject: [PATCH 19/38] build: lets try sh again --- build.gradle | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 4e6d83c..c06e51d 100644 --- a/build.gradle +++ b/build.gradle @@ -86,8 +86,7 @@ tasks.register('jarAndroid') { project.exec { workingDir "$project.rootProject.layout.buildDirectory/libs" standardOutput = d8OutputStream - executable "$d8Path" - args "$dependencies", "--min-api", "14", + commandLine 'sh', '-c', "$d8Path", "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" } ext.output = { From 156675d558c35410491c5a09133d0cfa02d62723 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:08:26 +0300 Subject: [PATCH 20/38] build: this is nuts --- build.gradle | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index c06e51d..4241366 100644 --- a/build.gradle +++ b/build.gradle @@ -84,9 +84,10 @@ tasks.register('jarAndroid') { def d8OutputStream = new ByteArrayOutputStream() project.exec { - workingDir "$project.rootProject.layout.buildDirectory/libs" standardOutput = d8OutputStream - commandLine 'sh', '-c', "$d8Path", "$dependencies", "--min-api", "14", + commandLine 'bash', '-c', + 'cd', "$project.rootProject.layout.buildDirectory/libs", + '&&', "$d8Path", "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" } ext.output = { From d2c9f5b419fffe1f06cb79faf2a74dc2329a52c3 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:11:09 +0300 Subject: [PATCH 21/38] build: lets setup gradle --- .github/workflows/main.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e49414c..68a971a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -25,6 +25,8 @@ jobs: run: | java --version d8 --version + - name: Setup Gradle + uses: gradle/actions/setup-gradle@v4 - name: Build mod jar run: | chmod +x gradlew From cefca0b47bd61b001e373c0b5e8435d49fe3f711 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:13:15 +0300 Subject: [PATCH 22/38] build: don't setup gradle --- .github/workflows/main.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 68a971a..e49414c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -25,8 +25,6 @@ jobs: run: | java --version d8 --version - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v4 - name: Build mod jar run: | chmod +x gradlew From 3b05b4e7368bdfccf07d518d7ca6799cb6561179 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:16:52 +0300 Subject: [PATCH 23/38] build: run with debug --- .github/workflows/main.yml | 2 +- build.gradle | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e49414c..1ba00be 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -28,7 +28,7 @@ jobs: - name: Build mod jar run: | chmod +x gradlew - ./gradlew deploy + ./gradlew deploy -d - name: Upload built jar file uses: actions/upload-artifact@v4 with: diff --git a/build.gradle b/build.gradle index 4241366..ca15530 100644 --- a/build.gradle +++ b/build.gradle @@ -84,10 +84,9 @@ tasks.register('jarAndroid') { def d8OutputStream = new ByteArrayOutputStream() project.exec { + workingDir "$project.rootProject.layout.buildDirectory/libs" standardOutput = d8OutputStream - commandLine 'bash', '-c', - 'cd', "$project.rootProject.layout.buildDirectory/libs", - '&&', "$d8Path", "$dependencies", "--min-api", "14", + commandLine d8Path, "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" } ext.output = { From e79cc184ea409528809b54d4b4fce3702be7ef8f Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:19:46 +0300 Subject: [PATCH 24/38] build: logger info --- build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/build.gradle b/build.gradle index ca15530..3e53cd7 100644 --- a/build.gradle +++ b/build.gradle @@ -81,6 +81,7 @@ tasks.register('jarAndroid') { workingDir project.rootDir } def d8Path = whichOutputStream.toString().trim() + logger.info("d8 path: $d8Path") def d8OutputStream = new ByteArrayOutputStream() project.exec { From 20c988089fb60dc11fe9e404495a57d2c07c91c8 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:25:58 +0300 Subject: [PATCH 25/38] build: remove dependencies --- .github/workflows/main.yml | 2 +- build.gradle | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1ba00be..e49414c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -28,7 +28,7 @@ jobs: - name: Build mod jar run: | chmod +x gradlew - ./gradlew deploy -d + ./gradlew deploy - name: Upload built jar file uses: actions/upload-artifact@v4 with: diff --git a/build.gradle b/build.gradle index 3e53cd7..3e21b87 100644 --- a/build.gradle +++ b/build.gradle @@ -83,6 +83,7 @@ tasks.register('jarAndroid') { def d8Path = whichOutputStream.toString().trim() logger.info("d8 path: $d8Path") + dependencies = "" def d8OutputStream = new ByteArrayOutputStream() project.exec { workingDir "$project.rootProject.layout.buildDirectory/libs" From a595735e5381b52464fd4ae19c5ea2606fd30266 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:29:17 +0300 Subject: [PATCH 26/38] build: maybe its order??? --- build.gradle | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 3e21b87..786e923 100644 --- a/build.gradle +++ b/build.gradle @@ -83,13 +83,12 @@ tasks.register('jarAndroid') { def d8Path = whichOutputStream.toString().trim() logger.info("d8 path: $d8Path") - dependencies = "" def d8OutputStream = new ByteArrayOutputStream() project.exec { - workingDir "$project.rootProject.layout.buildDirectory/libs" - standardOutput = d8OutputStream commandLine d8Path, "$dependencies", "--min-api", "14", "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" + standardOutput = d8OutputStream + workingDir "$project.rootProject.layout.buildDirectory/libs" } ext.output = { return d8OutputStream.toString() From c086eff79e1391c83ba08e44efe38ee2ed5bccd0 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:31:07 +0300 Subject: [PATCH 27/38] build: lets try old approach --- build.gradle | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/build.gradle b/build.gradle index 786e923..12f4093 100644 --- a/build.gradle +++ b/build.gradle @@ -83,16 +83,8 @@ tasks.register('jarAndroid') { def d8Path = whichOutputStream.toString().trim() logger.info("d8 path: $d8Path") - def d8OutputStream = new ByteArrayOutputStream() - project.exec { - commandLine d8Path, "$dependencies", "--min-api", "14", - "--output", "${project.archivesBaseName}Android.jar", "${project.archivesBaseName}Desktop.jar" - standardOutput = d8OutputStream - workingDir "$project.rootProject.layout.buildDirectory/libs" - } - ext.output = { - return d8OutputStream.toString() - } + "$d8Path $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" + .execute(null, new File("$buildDir/libs")).waitForProcessOutput(System.out, System.err) } } From 5d5d4c36a5a50284939cf4360a984b0a73751d56 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:33:44 +0300 Subject: [PATCH 28/38] build: this actually works? --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 12f4093..fb052e7 100644 --- a/build.gradle +++ b/build.gradle @@ -84,7 +84,7 @@ tasks.register('jarAndroid') { logger.info("d8 path: $d8Path") "$d8Path $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" - .execute(null, new File("$buildDir/libs")).waitForProcessOutput(System.out, System.err) + .execute(null, new File("$rootProject.layout.buildDirectory/libs")).waitForProcessOutput(System.out, System.err) } } From 453a84cfa707031d208cee88b62365b15ad6440c Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:35:35 +0300 Subject: [PATCH 29/38] build: what? --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index fb052e7..12f4093 100644 --- a/build.gradle +++ b/build.gradle @@ -84,7 +84,7 @@ tasks.register('jarAndroid') { logger.info("d8 path: $d8Path") "$d8Path $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" - .execute(null, new File("$rootProject.layout.buildDirectory/libs")).waitForProcessOutput(System.out, System.err) + .execute(null, new File("$buildDir/libs")).waitForProcessOutput(System.out, System.err) } } From 6e5901785968ad7e957665a88c704bb48171eff9 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:38:29 +0300 Subject: [PATCH 30/38] build: what??? --- build.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 12f4093..c5c5c3b 100644 --- a/build.gradle +++ b/build.gradle @@ -109,10 +109,10 @@ tasks.register('deploy', Jar) { dependsOn jar archiveFileName = "${project.archivesBaseName}.jar" - from { [zipTree("$rootProject.layout.buildDirectory/libs/${project.archivesBaseName}Desktop.jar"), zipTree("$rootProject.layout.buildDirectory/libs/${project.archivesBaseName}Android.jar")] } + from { [zipTree("$buildDir/libs/${project.archivesBaseName}Desktop.jar"), zipTree("$buildDir/libs/${project.archivesBaseName}Android.jar")] } doLast { - delete { delete "$rootProject.layout.buildDirectory/libs/${project.archivesBaseName}Desktop.jar" } - delete { delete "$rootProject.layout.buildDirectory/libs/${project.archivesBaseName}Android.jar" } + delete { delete "$buildDir/libs/${project.archivesBaseName}Desktop.jar" } + delete { delete "$buildDir/libs/${project.archivesBaseName}Android.jar" } } } From a244da2f6ed45adf7f5d72b4c62e5024fb482b67 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:40:40 +0300 Subject: [PATCH 31/38] build: forgot here --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index c5c5c3b..f60adb9 100644 --- a/build.gradle +++ b/build.gradle @@ -89,7 +89,7 @@ tasks.register('jarAndroid') { } jar{ - archiveFileName = "${project.rootProject.layout.buildDirectory}Desktop.jar" + archiveFileName = "${buildDir}Desktop.jar" from{ configurations.runtimeClasspath.collect{ it.isDirectory() ? it : zipTree(it) } From b3d2f1dc4847e6e27797be59005c295da6ad9276 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:44:23 +0300 Subject: [PATCH 32/38] build: make directory first??? --- build.gradle | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index f60adb9..75f0443 100644 --- a/build.gradle +++ b/build.gradle @@ -60,6 +60,7 @@ configurations.configureEach { tasks.register('jarAndroid') { dependsOn "jar" + doLast{ if(!sdkRoot || !new File(sdkRoot as String).exists()) throw new GradleException("No valid Android SDK found. Ensure that ANDROID_HOME is set to your Android SDK directory.") @@ -83,8 +84,11 @@ tasks.register('jarAndroid') { def d8Path = whichOutputStream.toString().trim() logger.info("d8 path: $d8Path") + def wd = new File("$buildDir/libs") + wd.mkdirs() + "$d8Path $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" - .execute(null, new File("$buildDir/libs")).waitForProcessOutput(System.out, System.err) + .execute(null, wd).waitForProcessOutput(System.out, System.err) } } From 0713bfc85aaa36d08338c057e05f1e688a5c419d Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:47:41 +0300 Subject: [PATCH 33/38] build: do first maybe --- build.gradle | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/build.gradle b/build.gradle index 75f0443..2abaa1d 100644 --- a/build.gradle +++ b/build.gradle @@ -61,6 +61,11 @@ configurations.configureEach { tasks.register('jarAndroid') { dependsOn "jar" + def wd = new File("$buildDir/libs") + doFirst{ + wd.mkdirs() + } + doLast{ if(!sdkRoot || !new File(sdkRoot as String).exists()) throw new GradleException("No valid Android SDK found. Ensure that ANDROID_HOME is set to your Android SDK directory.") @@ -74,20 +79,7 @@ tasks.register('jarAndroid') { def d8 = isWindows ? "d8.bat" : "d8" //dex and desugar files - this requires d8 in your PATH - - def whichOutputStream = new ByteArrayOutputStream() - project.exec { - commandLine 'which', "$d8" - standardOutput = whichOutputStream - workingDir project.rootDir - } - def d8Path = whichOutputStream.toString().trim() - logger.info("d8 path: $d8Path") - - def wd = new File("$buildDir/libs") - wd.mkdirs() - - "$d8Path $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" + "$d8 $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" .execute(null, wd).waitForProcessOutput(System.out, System.err) } } From 48bf6924147e9ab8ad2876bfbafc9262b739311c Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:50:45 +0300 Subject: [PATCH 34/38] build: wrong path for jar --- build.gradle | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/build.gradle b/build.gradle index 2abaa1d..feb45ab 100644 --- a/build.gradle +++ b/build.gradle @@ -58,14 +58,11 @@ configurations.configureEach { } } +jarDir = "$buildDir/libs" + tasks.register('jarAndroid') { dependsOn "jar" - def wd = new File("$buildDir/libs") - doFirst{ - wd.mkdirs() - } - doLast{ if(!sdkRoot || !new File(sdkRoot as String).exists()) throw new GradleException("No valid Android SDK found. Ensure that ANDROID_HOME is set to your Android SDK directory.") @@ -80,12 +77,12 @@ tasks.register('jarAndroid') { //dex and desugar files - this requires d8 in your PATH "$d8 $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" - .execute(null, wd).waitForProcessOutput(System.out, System.err) + .execute(null, new File(jarDir)).waitForProcessOutput(System.out, System.err) } } jar{ - archiveFileName = "${buildDir}Desktop.jar" + archiveFileName = "$jarDir/libs/Desktop.jar" from{ configurations.runtimeClasspath.collect{ it.isDirectory() ? it : zipTree(it) } @@ -105,10 +102,10 @@ tasks.register('deploy', Jar) { dependsOn jar archiveFileName = "${project.archivesBaseName}.jar" - from { [zipTree("$buildDir/libs/${project.archivesBaseName}Desktop.jar"), zipTree("$buildDir/libs/${project.archivesBaseName}Android.jar")] } + from { [zipTree("$jarDir/${project.archivesBaseName}Desktop.jar"), zipTree("$jarDir/libs/${project.archivesBaseName}Android.jar")] } doLast { - delete { delete "$buildDir/libs/${project.archivesBaseName}Desktop.jar" } - delete { delete "$buildDir/libs/${project.archivesBaseName}Android.jar" } + delete { delete "$jarDir/libs/${project.archivesBaseName}Desktop.jar" } + delete { delete "$jarDir/libs/${project.archivesBaseName}Android.jar" } } } From 4a2dfb6ae9fb258dd66df42e2e47893ee9bf9319 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:53:33 +0300 Subject: [PATCH 35/38] build: oops --- build.gradle | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/build.gradle b/build.gradle index feb45ab..29d1e9e 100644 --- a/build.gradle +++ b/build.gradle @@ -58,8 +58,6 @@ configurations.configureEach { } } -jarDir = "$buildDir/libs" - tasks.register('jarAndroid') { dependsOn "jar" @@ -77,12 +75,12 @@ tasks.register('jarAndroid') { //dex and desugar files - this requires d8 in your PATH "$d8 $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" - .execute(null, new File(jarDir)).waitForProcessOutput(System.out, System.err) + .execute(null, new File("$buildDir/libs")).waitForProcessOutput(System.out, System.err) } } jar{ - archiveFileName = "$jarDir/libs/Desktop.jar" + archiveFileName = "${project.archivesBaseName}Desktop.jar" from{ configurations.runtimeClasspath.collect{ it.isDirectory() ? it : zipTree(it) } @@ -102,10 +100,10 @@ tasks.register('deploy', Jar) { dependsOn jar archiveFileName = "${project.archivesBaseName}.jar" - from { [zipTree("$jarDir/${project.archivesBaseName}Desktop.jar"), zipTree("$jarDir/libs/${project.archivesBaseName}Android.jar")] } + from { [zipTree("$buildDir/libs/${project.archivesBaseName}Desktop.jar"), zipTree("$buildDir/libs/${project.archivesBaseName}Android.jar")] } doLast { - delete { delete "$jarDir/libs/${project.archivesBaseName}Desktop.jar" } - delete { delete "$jarDir/libs/${project.archivesBaseName}Android.jar" } + delete { delete "$buildDir/libs/${project.archivesBaseName}Desktop.jar" } + delete { delete "$buildDir/libs/${project.archivesBaseName}Android.jar" } } } From 3d5d533b7475f03d8b7e8877d28312af2fcf5a46 Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:55:59 +0300 Subject: [PATCH 36/38] build: try again --- build.gradle | 1 - 1 file changed, 1 deletion(-) diff --git a/build.gradle b/build.gradle index 29d1e9e..6268989 100644 --- a/build.gradle +++ b/build.gradle @@ -10,7 +10,6 @@ buildscript{ //the build number that this mod is made for mindustryVersion = 'v146' jabelVersion = "93fde537c7" - sdkVersion = "34.0.0" //windows sucks isWindows = System.getProperty("os.name").toLowerCase().contains("windows") sdkRoot = System.getenv("ANDROID_HOME") ?: System.getenv("ANDROID_SDK_ROOT") From a2f3e208f0c3e518dc1ce1b6c9c19cbaedb053ba Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 12:59:00 +0300 Subject: [PATCH 37/38] build: use buildDirectory --- build.gradle | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/build.gradle b/build.gradle index 6268989..2634b20 100644 --- a/build.gradle +++ b/build.gradle @@ -74,7 +74,7 @@ tasks.register('jarAndroid') { //dex and desugar files - this requires d8 in your PATH "$d8 $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" - .execute(null, new File("$buildDir/libs")).waitForProcessOutput(System.out, System.err) + .execute(null, new File("${layout.buildDirectory}/libs")).waitForProcessOutput(System.out, System.err) } } @@ -99,10 +99,10 @@ tasks.register('deploy', Jar) { dependsOn jar archiveFileName = "${project.archivesBaseName}.jar" - from { [zipTree("$buildDir/libs/${project.archivesBaseName}Desktop.jar"), zipTree("$buildDir/libs/${project.archivesBaseName}Android.jar")] } + from { [zipTree("${layout.buildDirectory}/libs/${project.archivesBaseName}Desktop.jar"), zipTree("${layout.buildDirectory}/libs/${project.archivesBaseName}Android.jar")] } doLast { - delete { delete "$buildDir/libs/${project.archivesBaseName}Desktop.jar" } - delete { delete "$buildDir/libs/${project.archivesBaseName}Android.jar" } + delete { delete "${layout.buildDirectory}/libs/${project.archivesBaseName}Desktop.jar" } + delete { delete "${layout.buildDirectory}/libs/${project.archivesBaseName}Android.jar" } } } From a42e242570c9c0bc130d2113d3e567376774470d Mon Sep 17 00:00:00 2001 From: slava0135 Date: Sat, 12 Apr 2025 13:01:00 +0300 Subject: [PATCH 38/38] build: use buildDirectory.get() --- build.gradle | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/build.gradle b/build.gradle index 2634b20..4b69fef 100644 --- a/build.gradle +++ b/build.gradle @@ -74,7 +74,7 @@ tasks.register('jarAndroid') { //dex and desugar files - this requires d8 in your PATH "$d8 $dependencies --min-api 14 --output ${project.archivesBaseName}Android.jar ${project.archivesBaseName}Desktop.jar" - .execute(null, new File("${layout.buildDirectory}/libs")).waitForProcessOutput(System.out, System.err) + .execute(null, new File("${layout.buildDirectory.get()}/libs")).waitForProcessOutput(System.out, System.err) } } @@ -99,10 +99,10 @@ tasks.register('deploy', Jar) { dependsOn jar archiveFileName = "${project.archivesBaseName}.jar" - from { [zipTree("${layout.buildDirectory}/libs/${project.archivesBaseName}Desktop.jar"), zipTree("${layout.buildDirectory}/libs/${project.archivesBaseName}Android.jar")] } + from { [zipTree("${layout.buildDirectory.get()}/libs/${project.archivesBaseName}Desktop.jar"), zipTree("${layout.buildDirectory.get()}/libs/${project.archivesBaseName}Android.jar")] } doLast { - delete { delete "${layout.buildDirectory}/libs/${project.archivesBaseName}Desktop.jar" } - delete { delete "${layout.buildDirectory}/libs/${project.archivesBaseName}Android.jar" } + delete { delete "${layout.buildDirectory.get()}/libs/${project.archivesBaseName}Desktop.jar" } + delete { delete "${layout.buildDirectory.get()}/libs/${project.archivesBaseName}Android.jar" } } }