java upgrade, 6.0.0 release

This commit is contained in:
Bane Stojkovic
2026-06-14 22:03:29 +02:00
parent 3425fff3a0
commit e85d618498
13 changed files with 312 additions and 306 deletions
+3 -1
View File
@@ -1,8 +1,10 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="DIYLCStarter" type="Application" factoryName="Application" nameIsGenerated="true">
<option name="ALTERNATIVE_JRE_PATH" value="temurin-21" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="true" />
<option name="MAIN_CLASS_NAME" value="org.diylc.DIYLCStarter" />
<module name="diylc-swing" />
<option name="VM_PARAMETERS" value="-Xms1024m -Xmx4096m -Ddorg.diylc.debugAreaPerformance=true -Dorg.diylc.scriptRun=true -Dorg.diylc.cloud.baseUrl=http://localhost:8000/v1 -Dfile.encoding=UTF-8 --add-exports java.desktop/com.apple.eawt.event=ALL-UNNAMED --add-exports java.desktop/com.apple.eio=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED --add-opens java.desktop/java.awt.geom=ALL-UNNAMED" />
<option name="VM_PARAMETERS" value="-Xms1024m -Xmx4096m -Ddorg.diylc.debugAreaPerformance=true -Dorg.diylc.scriptRun=true -Ddorg.diylc.cloud.baseUrl=http://localhost:8000/v1 -Dfile.encoding=UTF-8 --add-exports java.desktop/com.apple.eawt.event=ALL-UNNAMED --add-exports java.desktop/com.apple.eio=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED --add-opens java.desktop/java.awt.geom=ALL-UNNAMED" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="org.diylc.*" />
+3 -3
View File
@@ -7,15 +7,15 @@
<parent>
<groupId>org.diylc</groupId>
<artifactId>diylc-parent</artifactId>
<version>5.15.0</version>
<version>6.0.0</version>
</parent>
<artifactId>diylc-core</artifactId>
<!-- No need to specify version - it inherits from parent -->
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
</properties>
<dependencies>
+7 -107
View File
@@ -1,109 +1,5 @@
<java.util.Arrays_-ArrayList>
<a class="org.diylc.appframework.update.Version-array">
<org.diylc.appframework.update.Version>
<versionNumber>
<major>5</major>
<minor>7</minor>
<build>0</build>
</versionNumber>
<releaseDate>2025-12-21 00:00:00.000 CET</releaseDate>
<name></name>
<changes>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added '6P5T (5-Position 6 Pole AxLabs)' lever switch type (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added '4P3T (3-Position 4 Pole AxLabs)' lever switch type (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added 'DP3T (Import 5-Position 2502N)' lever switch type (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Corrected 'S1 Switch' up/down position designators (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Corrected 'Mini Toggle Switch' position names for center-OFF variants to be in the correct order (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>'Drill Hole' changes color to red when selected</description>
</org.diylc.appframework.update.Change>
</changes>
<url>https://github.com/bancika/diy-layout-creator/releases</url>
</org.diylc.appframework.update.Version>
<org.diylc.appframework.update.Version>
<versionNumber>
<major>5</major>
<minor>8</minor>
<build>0</build>
</versionNumber>
<releaseDate>2025-12-30 00:00:00.000 CET</releaseDate>
<name></name>
<changes>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added Silkscreen export to PDF/PNG and print capabilities</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added 'Multiwatt IC' package with 11 and 15 pin varieties</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added new property in 'LP Switch' that allows having the middle terminals connected (as they were) or disconnected to allow more flexibility</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added 'Ending Style' property to 'Copper Trace' and 'Curved Trace' to allow choosing round or flat style</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added Chinese simplified (thank you chenjingyuanku) and Hindi UI translation and updated all other languages with new translations</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added configuration for text scale factor in rare cases when system scale factor is not applied correctly; requires adding a configuration property to config.xml with key 'fontScaleFactor' and a desired float value</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Improved behavior of mouse cursor during drag operations; this should also fix behavior on some linux machines that show a "forbidden" cursor while dragging</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Improved sensitivity of 'Multimeter Probe' that required pixel-level precision to detect connectivity; improved rendering of the probe in outline mode</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Improve contrast of tooltips on some Linux machines that show white text against yellow balloon</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Honor label color settings for 'Tape Measure' component</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Reorganized export and print related items in the File menu to reduce clutter</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType>
<description>Fixed underside rendering and mirroring position issues that affected only SPDT 'Mini Toggle Switch' types</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType>
<description>Application freezes when using underside rendering or mirroring on 'Pin Header' when sized at 1x1</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType>
<description>'Rotary Switch (Open)' cannot be selected by clicking on the wafer for 4-pole variations</description>
</org.diylc.appframework.update.Change>
</changes>
<url>https://github.com/bancika/diy-layout-creator/releases</url>
</org.diylc.appframework.update.Version>
<org.diylc.appframework.update.Version>
<versionNumber>
<major>5</major>
@@ -422,16 +318,20 @@
</org.diylc.appframework.update.Version>
<org.diylc.appframework.update.Version>
<versionNumber>
<major>5</major>
<minor>15</minor>
<major>6</major>
<minor>0</minor>
<build>0</build>
</versionNumber>
<releaseDate>2026-06-13 00:00:00.000 CET</releaseDate>
<name></name>
<changes>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Upgrade Java version to 21</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType>
<description>Fixed scaling for 'Image' and 'SVG Image' components; it was showing as undefined</description>
<description>Fixed scaling for 'Image' and 'SVG Image' components; it was showing as unrecognized</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType>
@@ -5153,5 +5153,109 @@
</changes>
<url>https://github.com/bancika/diy-layout-creator/releases</url>
</org.diylc.appframework.update.Version>
<org.diylc.appframework.update.Version>
<versionNumber>
<major>5</major>
<minor>7</minor>
<build>0</build>
</versionNumber>
<releaseDate>2025-12-21 00:00:00.000 CET</releaseDate>
<name></name>
<changes>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added '6P5T (5-Position 6 Pole AxLabs)' lever switch type (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added '4P3T (3-Position 4 Pole AxLabs)' lever switch type (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added 'DP3T (Import 5-Position 2502N)' lever switch type (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Corrected 'S1 Switch' up/down position designators (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Corrected 'Mini Toggle Switch' position names for center-OFF variants to be in the correct order (thank you mm-rnd)</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>'Drill Hole' changes color to red when selected</description>
</org.diylc.appframework.update.Change>
</changes>
<url>https://github.com/bancika/diy-layout-creator/releases</url>
</org.diylc.appframework.update.Version>
<org.diylc.appframework.update.Version>
<versionNumber>
<major>5</major>
<minor>8</minor>
<build>0</build>
</versionNumber>
<releaseDate>2025-12-30 00:00:00.000 CET</releaseDate>
<name></name>
<changes>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added Silkscreen export to PDF/PNG and print capabilities</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added 'Multiwatt IC' package with 11 and 15 pin varieties</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added new property in 'LP Switch' that allows having the middle terminals connected (as they were) or disconnected to allow more flexibility</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added 'Ending Style' property to 'Copper Trace' and 'Curved Trace' to allow choosing round or flat style</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added Chinese simplified (thank you chenjingyuanku) and Hindi UI translation and updated all other languages with new translations</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType>
<description>Added configuration for text scale factor in rare cases when system scale factor is not applied correctly; requires adding a configuration property to config.xml with key 'fontScaleFactor' and a desired float value</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Improved behavior of mouse cursor during drag operations; this should also fix behavior on some linux machines that show a "forbidden" cursor while dragging</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Improved sensitivity of 'Multimeter Probe' that required pixel-level precision to detect connectivity; improved rendering of the probe in outline mode</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Improve contrast of tooltips on some Linux machines that show white text against yellow balloon</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Honor label color settings for 'Tape Measure' component</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Reorganized export and print related items in the File menu to reduce clutter</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType>
<description>Fixed underside rendering and mirroring position issues that affected only SPDT 'Mini Toggle Switch' types</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType>
<description>Application freezes when using underside rendering or mirroring on 'Pin Header' when sized at 1x1</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType>
<description>'Rotary Switch (Open)' cannot be selected by clicking on the wafer for 4-pole variations</description>
</org.diylc.appframework.update.Change>
</changes>
<url>https://github.com/bancika/diy-layout-creator/releases</url>
</org.diylc.appframework.update.Version>
</a>
</java.util.Arrays_-ArrayList>
+3 -3
View File
@@ -7,15 +7,15 @@
<parent>
<groupId>org.diylc</groupId>
<artifactId>diylc-parent</artifactId>
<version>5.15.0</version>
<version>6.0.0</version>
</parent>
<artifactId>diylc-library</artifactId>
<!-- No need to specify version - it inherits from parent -->
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
</properties>
<dependencies>
+6 -6
View File
@@ -16,10 +16,10 @@
<property name="main.class" value="org.diylc.DIYLCStarter" />
<property name="diylc.version" value="5.0.0" />
<property name="win.jre.x86.path" value="tools/jre/win/x86/jre17.0.14_7.zip" />
<property name="win.jre.x64.path" value="tools/jre/win/x64/jre17.0.14_7.zip" />
<property name="osx.jre.x86.path" value="tools/jre/osx/x86/jre17.zip" />
<property name="osx.jre.arm.path" value="tools/jre/osx/arm/jre17.zip" />
<property name="win.jre.x86.path" value="tools/jre/win/x86/jre21.0.11_10.zip" />
<property name="win.jre.x64.path" value="tools/jre/win/x64/jre21.0.11_10.zip" />
<property name="osx.jre.x86.path" value="tools/jre/osx/x86/jre21.zip" />
<property name="osx.jre.arm.path" value="tools/jre/osx/arm/jre21.zip" />
<property name="classes.dir" value="${build.dir}/temp/${ant.project.name}/classes" />
<property name="test.classes.dir" value="${build.dir}/temp/${ant.project.name}/test.classes" />
@@ -93,7 +93,7 @@
<bundleapp
outputdirectory="${build.dir}"
name="DIYLC"
jvmrequired="17"
jvmrequired="21"
copyright="2025 bancika"
displayname="DIY Layout Creator"
identifier="org.diylc.Desktop"
@@ -151,7 +151,7 @@
<bundleapp
outputdirectory="${build.dir}"
name="DIYLC"
jvmrequired="17"
jvmrequired="21"
copyright="2025 bancika"
displayname="DIY Layout Creator"
identifier="org.diylc.Desktop"
+151 -151
View File
@@ -1,151 +1,151 @@
<project name="jre-downloader" basedir="..">
<property name="jdk.version" value="17.0.14+7" />
<property name="jdk.version.file" value="17.0.14_7" />
<target name="fetch-jre-macos-x86">
<property name="jdk.archive.mac.x86" value="OpenJDK17U-jre_x64_mac_hotspot_${jdk.version.file}.tar.gz" />
<property name="jdk.url.mac.x86" value="https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.mac.x86}" />
<property name="jre.dest.mac.x86" value="${build.dir}/jre_x86" />
<!-- Clean old jre_macos folder -->
<delete dir="${jre.dest.mac.x86}" />
<!-- Create folder to hold extracted JRE -->
<mkdir dir="${jre.dest.mac.x86}" />
<!-- Download JRE 17 for macOS Intel -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.mac.x86}" dest="${build.dir}/downloads/${jdk.archive.mac.x86}" usetimestamp="true" />
<!-- Extract JRE into jre_macos -->
<untar src="${build.dir}/downloads/${jdk.archive.mac.x86}" dest="${jre.dest.mac.x86}" compression="gzip" />
<!-- Move files up one level in place -->
<move todir="${jre.dest.mac.x86}">
<fileset dir="${jre.dest.mac.x86}/jdk-${jdk.version}-jre" />
</move>
<!-- Remove empty top-level folder -->
<delete dir="${jre.dest.mac.x86}/jdk-${jdk.version}-jre" />
<echo message="JRE 17 (macOS Intel) extracted to ${jre.dest.mac.x86}" />
</target>
<target name="fetch-jre-macos-arm">
<property name="jdk.archive.mac.arm" value="OpenJDK17U-jre_aarch64_mac_hotspot_${jdk.version.file}.tar.gz" />
<property name="jdk.url.mac.arm" value="https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.mac.arm}" />
<property name="jre.dest.mac.arm" value="${build.dir}/jre_arm" />
<!-- Clean old jre_macos folder -->
<delete dir="${jre.dest.mac.arm}" />
<!-- Create folder to hold extracted JRE -->
<mkdir dir="${jre.dest.mac.arm}" />
<!-- Download JRE 17 for macOS Intel -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.mac.arm}" dest="${build.dir}/downloads/${jdk.archive.mac.arm}" usetimestamp="true" />
<!-- Extract JRE into jre_macos -->
<untar src="${build.dir}/downloads/${jdk.archive.mac.arm}" dest="${jre.dest.mac.arm}" compression="gzip" />
<!-- Move files up one level in place -->
<move todir="${jre.dest.mac.arm}">
<fileset dir="${jre.dest.mac.arm}/jdk-${jdk.version}-jre" />
</move>
<!-- Remove empty top-level folder -->
<delete dir="${jre.dest.mac.arm}/jdk-${jdk.version}-jre" />
<echo message="JRE 17 (macOS Intel) extracted to ${jre.dest.mac.arm}" />
</target>
<target name="fetch-jre-win32">
<property name="jdk.archive.win32" value="OpenJDK17U-jre_x86-32_windows_hotspot_${jdk.version.file}.zip" />
<property name="jdk.url.win32" value="https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.win32}" />
<property name="jre.dest.win32" value="${build.dir}/jre_win" />
<!-- Clean old jre_win folder -->
<delete dir="${jre.dest.win32}" />
<!-- Create folder to hold extracted JRE -->
<mkdir dir="${jre.dest.win32}" />
<!-- Download JRE 32-bit for Windows -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.win32}" dest="${build.dir}/downloads/${jdk.archive.win32}" usetimestamp="true" />
<!-- Extract JRE into jre_win -->
<unzip src="${build.dir}/downloads/${jdk.archive.win32}" dest="${jre.dest.win32}" />
<!-- Move files up one level in place -->
<move todir="${jre.dest.win32}">
<fileset dir="${jre.dest.win32}/jdk-${jdk.version}-jre" />
</move>
<!-- Remove empty top-level folder -->
<delete dir="${jre.dest.win32}/jdk-${jdk.version}-jre" />
<echo message="JRE 17 (32-bit) extracted to ${jre.dest.win32}" />
</target>
<target name="fetch-jre-win64">
<property name="jdk.archive.win64" value="OpenJDK17U-jre_x64_windows_hotspot_${jdk.version.file}.zip" />
<property name="jdk.url.win64" value="https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.win64}" />
<property name="jre.dest.win64" value="${build.dir}/jre_win" />
<!-- Clean old jre_win folder -->
<delete dir="${jre.dest.win64}" />
<!-- Create folder to hold extracted JRE -->
<mkdir dir="${jre.dest.win64}" />
<!-- Download JRE 64-bit for Windows -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.win64}" dest="${build.dir}/downloads/${jdk.archive.win64}" usetimestamp="true" />
<!-- Extract JRE into jre_win -->
<unzip src="${build.dir}/downloads/${jdk.archive.win64}" dest="${jre.dest.win64}" />
<!-- Move files up one level in place -->
<move todir="${jre.dest.win64}">
<fileset dir="${jre.dest.win64}/jdk-${jdk.version}-jre" />
</move>
<!-- Remove empty top-level folder -->
<delete dir="${jre.dest.win64}/jdk-${jdk.version}-jre" />
<echo message="JRE 17 (64-bit) extracted to ${jre.dest.win64}" />
</target>
<target name="fetch-jre-linux">
<property name="jdk.archive.linux" value="OpenJDK17U-jre_x64_linux_hotspot_${jdk.version.file}.tar.gz" />
<property name="jdk.url.linux" value="https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.linux}" />
<property name="jre.dest.linux" value="${basedir}/build/jre" />
<property name="appdir.jre" value="${appdir}/usr/bin/jre" />
<!-- Ensure clean jre folder -->
<delete dir="${jre.dest.linux}" />
<mkdir dir="${jre.dest.linux}" />
<!-- Download JRE 17 if not already present -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.linux}" dest="${build.dir}/downloads/${jdk.archive.linux}" usetimestamp="true" />
<!-- Extract JRE -->
<untar src="${build.dir}/downloads/${jdk.archive.linux}" dest="${jre.dest.linux}" compression="gzip" />
<!-- Move extracted folder into AppImage location -->
<mkdir dir="${appdir.jre}" />
<move todir="${appdir.jre}">
<fileset dir="${jre.dest.linux}/jdk-${jdk.version}-jre" />
</move>
<echo message="JRE 17 bundled into ${appdir.jre}" />
</target>
</project>
<project name="jre-downloader" basedir="..">
<property name="jdk.version" value="21.0.11+10" />
<property name="jdk.version.file" value="21.0.11_10" />
<target name="fetch-jre-macos-x86">
<property name="jdk.archive.mac.x86" value="OpenJDK21U-jre_x64_mac_hotspot_${jdk.version.file}.tar.gz" />
<property name="jdk.url.mac.x86" value="https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.mac.x86}" />
<property name="jre.dest.mac.x86" value="${build.dir}/jre_x86" />
<!-- Clean old jre_macos folder -->
<delete dir="${jre.dest.mac.x86}" />
<!-- Create folder to hold extracted JRE -->
<mkdir dir="${jre.dest.mac.x86}" />
<!-- Download JRE 21 for macOS Intel -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.mac.x86}" dest="${build.dir}/downloads/${jdk.archive.mac.x86}" usetimestamp="true" />
<!-- Extract JRE into jre_macos -->
<untar src="${build.dir}/downloads/${jdk.archive.mac.x86}" dest="${jre.dest.mac.x86}" compression="gzip" />
<!-- Move files up one level in place -->
<move todir="${jre.dest.mac.x86}">
<fileset dir="${jre.dest.mac.x86}/jdk-${jdk.version}-jre" />
</move>
<!-- Remove empty top-level folder -->
<delete dir="${jre.dest.mac.x86}/jdk-${jdk.version}-jre" />
<echo message="JRE 21 (macOS Intel) extracted to ${jre.dest.mac.x86}" />
</target>
<target name="fetch-jre-macos-arm">
<property name="jdk.archive.mac.arm" value="OpenJDK21U-jre_aarch64_mac_hotspot_${jdk.version.file}.tar.gz" />
<property name="jdk.url.mac.arm" value="https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.mac.arm}" />
<property name="jre.dest.mac.arm" value="${build.dir}/jre_arm" />
<!-- Clean old jre_macos folder -->
<delete dir="${jre.dest.mac.arm}" />
<!-- Create folder to hold extracted JRE -->
<mkdir dir="${jre.dest.mac.arm}" />
<!-- Download JRE 21 for macOS ARM -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.mac.arm}" dest="${build.dir}/downloads/${jdk.archive.mac.arm}" usetimestamp="true" />
<!-- Extract JRE into jre_macos -->
<untar src="${build.dir}/downloads/${jdk.archive.mac.arm}" dest="${jre.dest.mac.arm}" compression="gzip" />
<!-- Move files up one level in place -->
<move todir="${jre.dest.mac.arm}">
<fileset dir="${jre.dest.mac.arm}/jdk-${jdk.version}-jre" />
</move>
<!-- Remove empty top-level folder -->
<delete dir="${jre.dest.mac.arm}/jdk-${jdk.version}-jre" />
<echo message="JRE 21 (macOS ARM) extracted to ${jre.dest.mac.arm}" />
</target>
<target name="fetch-jre-win32">
<property name="jdk.archive.win32" value="OpenJDK21U-jre_x86-32_windows_hotspot_${jdk.version.file}.zip" />
<property name="jdk.url.win32" value="https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.win32}" />
<property name="jre.dest.win32" value="${build.dir}/jre_win" />
<!-- Clean old jre_win folder -->
<delete dir="${jre.dest.win32}" />
<!-- Create folder to hold extracted JRE -->
<mkdir dir="${jre.dest.win32}" />
<!-- Download JRE 32-bit for Windows (NOTE: Temurin 21 does not provide x86-32 builds) -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.win32}" dest="${build.dir}/downloads/${jdk.archive.win32}" usetimestamp="true" />
<!-- Extract JRE into jre_win -->
<unzip src="${build.dir}/downloads/${jdk.archive.win32}" dest="${jre.dest.win32}" />
<!-- Move files up one level in place -->
<move todir="${jre.dest.win32}">
<fileset dir="${jre.dest.win32}/jdk-${jdk.version}-jre" />
</move>
<!-- Remove empty top-level folder -->
<delete dir="${jre.dest.win32}/jdk-${jdk.version}-jre" />
<echo message="JRE 21 (32-bit) extracted to ${jre.dest.win32}" />
</target>
<target name="fetch-jre-win64">
<property name="jdk.archive.win64" value="OpenJDK21U-jre_x64_windows_hotspot_${jdk.version.file}.zip" />
<property name="jdk.url.win64" value="https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.win64}" />
<property name="jre.dest.win64" value="${build.dir}/jre_win" />
<!-- Clean old jre_win folder -->
<delete dir="${jre.dest.win64}" />
<!-- Create folder to hold extracted JRE -->
<mkdir dir="${jre.dest.win64}" />
<!-- Download JRE 64-bit for Windows -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.win64}" dest="${build.dir}/downloads/${jdk.archive.win64}" usetimestamp="true" />
<!-- Extract JRE into jre_win -->
<unzip src="${build.dir}/downloads/${jdk.archive.win64}" dest="${jre.dest.win64}" />
<!-- Move files up one level in place -->
<move todir="${jre.dest.win64}">
<fileset dir="${jre.dest.win64}/jdk-${jdk.version}-jre" />
</move>
<!-- Remove empty top-level folder -->
<delete dir="${jre.dest.win64}/jdk-${jdk.version}-jre" />
<echo message="JRE 21 (64-bit) extracted to ${jre.dest.win64}" />
</target>
<target name="fetch-jre-linux">
<property name="jdk.archive.linux" value="OpenJDK21U-jre_x64_linux_hotspot_${jdk.version.file}.tar.gz" />
<property name="jdk.url.linux" value="https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.linux}" />
<property name="jre.dest.linux" value="${basedir}/build/jre" />
<property name="appdir.jre" value="${appdir}/usr/bin/jre" />
<!-- Ensure clean jre folder -->
<delete dir="${jre.dest.linux}" />
<mkdir dir="${jre.dest.linux}" />
<!-- Download JRE 21 if not already present -->
<mkdir dir="${build.dir}/downloads" />
<get src="${jdk.url.linux}" dest="${build.dir}/downloads/${jdk.archive.linux}" usetimestamp="true" />
<!-- Extract JRE -->
<untar src="${build.dir}/downloads/${jdk.archive.linux}" dest="${jre.dest.linux}" compression="gzip" />
<!-- Move extracted folder into AppImage location -->
<mkdir dir="${appdir.jre}" />
<move todir="${appdir.jre}">
<fileset dir="${jre.dest.linux}/jdk-${jdk.version}-jre" />
</move>
<echo message="JRE 21 bundled into ${appdir.jre}" />
</target>
</project>
+1 -1
View File
@@ -28,7 +28,7 @@ ArchitecturesInstallIn64BitMode=x64compatible
Source: "diylc-x64.exe"; DestDir: "{app}"; DestName: "diylc.exe"
Source: "..\..\src\main\resources\icons\diylc_file.ico"; DestDir: "{app}"
Source: "..\..\target\diylc.jar"; DestDir: "{app}"
Source: "..\..\target\jre_win\*"; DestDir: "{app}\jre17"; Flags: ignoreversion recursesubdirs
Source: "..\..\target\jre_win\*"; DestDir: "{app}\jre21"; Flags: ignoreversion recursesubdirs
Source: "donate.bmp"; DestDir: "{tmp}"; Flags: dontcopy nocompression
[Registry]
@@ -18,10 +18,10 @@
<mainClass>org.diylc.DIYLCStarter</mainClass>
</classPath>
<jre>
<path>jre17</path>
<path>jre21</path>
<requiresJdk>false</requiresJdk>
<requires64Bit>true</requires64Bit>
<minVersion>17</minVersion>
<minVersion>21</minVersion>
<maxVersion></maxVersion>
<initialHeapSize>1024</initialHeapSize>
<maxHeapSize>4096</maxHeapSize>
@@ -18,10 +18,10 @@
<mainClass>org.diylc.DIYLCStarter</mainClass>
</classPath>
<jre>
<path>jre17</path>
<path>jre21</path>
<requiresJdk>false</requiresJdk>
<requires64Bit>false</requires64Bit>
<minVersion>17</minVersion>
<minVersion>21</minVersion>
<maxVersion></maxVersion>
<initialHeapSize>1024</initialHeapSize>
<maxHeapSize>2048</maxHeapSize>
+27 -27
View File
@@ -7,15 +7,15 @@
<parent>
<groupId>org.diylc</groupId>
<artifactId>diylc-parent</artifactId>
<version>5.15.0</version>
<version>6.0.0</version>
</parent>
<artifactId>diylc-swing</artifactId>
<!-- No need to specify version - it inherits from parent -->
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
</properties>
<dependencies>
@@ -307,10 +307,10 @@
<id>linux-appimage</id>
<properties>
<appdir.dir>${project.build.directory}/AppDir</appdir.dir>
<jdk.version>17.0.14+7</jdk.version>
<jdk.version.file>17.0.14_7</jdk.version.file>
<jdk.archive.linux>OpenJDK17U-jre_x64_linux_hotspot_${jdk.version.file}.tar.gz</jdk.archive.linux>
<jdk.url.linux>https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.linux}</jdk.url.linux>
<jdk.version>21.0.11+10</jdk.version>
<jdk.version.file>21.0.11_10</jdk.version.file>
<jdk.archive.linux>OpenJDK21U-jre_x64_linux_hotspot_${jdk.version.file}.tar.gz</jdk.archive.linux>
<jdk.url.linux>https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.linux}</jdk.url.linux>
<jre.dest.linux>${project.build.directory}/jre-temp</jre.dest.linux>
<wsl.command>wsl bash -c</wsl.command>
<appimage.output.file>DIYLayoutCreator-${project.version}-x86_64.AppImage</appimage.output.file>
@@ -561,10 +561,10 @@
<profile>
<id>win64-installer</id>
<properties>
<jdk.version>17.0.14+7</jdk.version>
<jdk.version.file>17.0.14_7</jdk.version.file>
<jdk.archive.win64>OpenJDK17U-jre_x64_windows_hotspot_${jdk.version.file}.zip</jdk.archive.win64>
<jdk.url.win64>https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.win64}</jdk.url.win64>
<jdk.version>21.0.11+10</jdk.version>
<jdk.version.file>21.0.11_10</jdk.version.file>
<jdk.archive.win64>OpenJDK21U-jre_x64_windows_hotspot_${jdk.version.file}.zip</jdk.archive.win64>
<jdk.url.win64>https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.win64}</jdk.url.win64>
<jre.dest.win64>${project.build.directory}/jre_win</jre.dest.win64>
</properties>
<build>
@@ -647,10 +647,10 @@
<profile>
<id>win64-zip</id>
<properties>
<jdk.version>17.0.14+7</jdk.version>
<jdk.version.file>17.0.14_7</jdk.version.file>
<jdk.archive.win64>OpenJDK17U-jre_x64_windows_hotspot_${jdk.version.file}.zip</jdk.archive.win64>
<jdk.url.win64>https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.win64}</jdk.url.win64>
<jdk.version>21.0.11+10</jdk.version>
<jdk.version.file>21.0.11_10</jdk.version.file>
<jdk.archive.win64>OpenJDK21U-jre_x64_windows_hotspot_${jdk.version.file}.zip</jdk.archive.win64>
<jdk.url.win64>https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.win64}</jdk.url.win64>
<jre.dest.win64>${project.build.directory}/jre_win</jre.dest.win64>
</properties>
<build>
@@ -716,8 +716,8 @@
<copy file="${project.basedir}/deploy/win/diylc-x64.exe"
tofile="${project.build.directory}/zip-temp/diylc.exe" />
<!-- Copy JRE to jre17 folder instead of jre -->
<copy todir="${project.build.directory}/zip-temp/jre17">
<!-- Copy JRE to jre21 folder instead of jre -->
<copy todir="${project.build.directory}/zip-temp/jre21">
<fileset dir="${jre.dest.win64}" />
</copy>
@@ -740,10 +740,10 @@
<profile>
<id>mac-x86</id>
<properties>
<jdk.version>17.0.14+7</jdk.version>
<jdk.version.file>17.0.14_7</jdk.version.file>
<jdk.archive.osx>OpenJDK17U-jre_x64_mac_hotspot_${jdk.version.file}.tar.gz</jdk.archive.osx>
<jdk.url.osx>https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.osx}</jdk.url.osx>
<jdk.version>21.0.11+10</jdk.version>
<jdk.version.file>21.0.11_10</jdk.version.file>
<jdk.archive.osx>OpenJDK21U-jre_x64_mac_hotspot_${jdk.version.file}.tar.gz</jdk.archive.osx>
<jdk.url.osx>https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.osx}</jdk.url.osx>
<jre.dest.osx>${project.build.directory}/jre_x86.bundle</jre.dest.osx>
</properties>
<build>
@@ -853,7 +853,7 @@
icon="${project.basedir}/src/main/resources/icons/diylc.icns"
mainclassname="org.diylc.DIYLCStarter"
copyright="2025 bancika"
jvmrequired="17">
jvmrequired="21">
<bundledocument contentTypes="org.diylc.diy"
name="DIYLC document"
role="Editor"
@@ -1053,10 +1053,10 @@
<profile>
<id>mac-arm</id>
<properties>
<jdk.version>17.0.14+7</jdk.version>
<jdk.version.file>17.0.14_7</jdk.version.file>
<jdk.archive.osx>OpenJDK17U-jre_aarch64_mac_hotspot_${jdk.version.file}.tar.gz</jdk.archive.osx>
<jdk.url.osx>https://github.com/adoptium/temurin17-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.osx}</jdk.url.osx>
<jdk.version>21.0.11+10</jdk.version>
<jdk.version.file>21.0.11_10</jdk.version.file>
<jdk.archive.osx>OpenJDK21U-jre_aarch64_mac_hotspot_${jdk.version.file}.tar.gz</jdk.archive.osx>
<jdk.url.osx>https://github.com/adoptium/temurin21-binaries/releases/download/jdk-${jdk.version}/${jdk.archive.osx}</jdk.url.osx>
<jre.dest.osx>${project.build.directory}/jre_arm.bundle</jre.dest.osx>
</properties>
<build>
@@ -1166,7 +1166,7 @@
icon="${project.basedir}/src/main/resources/icons/diylc.icns"
mainclassname="org.diylc.DIYLCStarter"
copyright="2025 bancika"
jvmrequired="17">
jvmrequired="21">
<bundledocument contentTypes="org.diylc.diy"
name="DIYLC document"
role="Editor"
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

+3 -3
View File
@@ -6,7 +6,7 @@
<groupId>org.diylc</groupId>
<artifactId>diylc-parent</artifactId>
<version>5.15.0</version>
<version>6.0.0</version>
<packaging>pom</packaging>
<name>DIY Layout Creator</name>
@@ -20,8 +20,8 @@
<properties>
<project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<log4j.version>1.2.15</log4j.version>
<xstream.version>1.4.21</xstream.version>
</properties>