[GH-ISSUE #306] Windows Binary Release #111

Closed
opened 2026-02-26 04:34:04 +03:00 by kerem · 4 comments
Owner

Originally created by @mageddo on GitHub (Feb 24, 2023).
Original GitHub issue: https://github.com/mageddo/dns-proxy-server/issues/306

What is expected

It actually possible to generate a binary release for Windows, it's not really necessary as people can use the linux docker image, ubuntu wsl2 or just run the jar but a nice to have feature.

  • Create and CD job to release a windows binary after the linux ones, see this link for more information
  • Github discussion about graalvm cross compilation
Originally created by @mageddo on GitHub (Feb 24, 2023). Original GitHub issue: https://github.com/mageddo/dns-proxy-server/issues/306 ### What is expected It actually possible to generate a binary release for Windows, it's not really necessary as people can use the linux docker image, ubuntu wsl2 or just run the jar but a nice to have feature. * Create and CD job to release a windows binary after the linux ones, [see this link][1] for more information * [Github discussion][2] about graalvm cross compilation [1]: https://github.com/marketplace/actions/github-action-for-graalvm#building-a-helloworld-with-graalvm-native-image-on-different-platforms [2]: https://github.com/oracle/graal/issues/407#issuecomment-1188978769
kerem 2026-02-26 04:34:04 +03:00
  • closed this issue
  • added the
    feature
    label
Author
Owner

@mageddo commented on GitHub (Mar 7, 2023):

While it don't get real:

  1. Run DPS using docker #342
  2. See the latest jar release which is cross platform
  3. Upvote #315 for a simplified jar run
<!-- gh-comment-id:1458961862 --> @mageddo commented on GitHub (Mar 7, 2023): While it don't get real: 1. Run DPS using docker #342 2. See the latest [jar release][1] which is cross platform 3. Upvote #315 for a simplified jar run [1]: https://github.com/mageddo/dns-proxy-server/releases
Author
Owner

@mageddo commented on GitHub (Mar 13, 2023):

Depends on #359

<!-- gh-comment-id:1466486090 --> @mageddo commented on GitHub (Mar 13, 2023): Depends on #359
Author
Owner

@mageddo commented on GitHub (Mar 15, 2023):

Got encoding error so will need to add all charsets or at least cp1252, will test how much it increases the image size

Mar 15, 2023 12:08:07 AM com.sun.jna.Native <clinit>
WARNING: Failed to get charset for native.encoding value : 'Cp1252'
java.nio.charset.UnsupportedCharsetException: Cp1252
        at java.base@19.0.2/java.nio.charset.Charset.forName(Charset.java:537)
        at com.sun.jna.Native.<clinit>(Native.java:133)
        at com.sun.jna.platform.win32.WinReg$HKEYByReference.<init>(WinReg.java:52)
        at com.sun.jna.platform.win32.WinReg$HKEYByReference.<init>(WinReg.java:48)
        at com.sun.jna.platform.win32.Advapi32Util.registryGetKeys(Advapi32Util.java:2039)
        at com.sun.jna.platform.win32.Advapi32Util.registryGetKeys(Advapi32Util.java:2023)
        at com.mageddo.jna.net.windows.registry.NetworkRegistry.findNetworksIds(NetworkRegistry.java:48)
        at com.mageddo.jna.net.windows.registry.NetworkRegistry.findNetworksWithIp(NetworkRegistry.java:56)
        at com.mageddo.jna.net.windows.registry.NetworkRegistry.findNetworksWithIpIds(NetworkRegistry.java:40)
        at com.mageddo.net.windows.NetworkWindows.findNetworks(NetworkWindows.java:16)
        at com.mageddo.dnsproxyserver.dnsconfigurator.DnsConfiguratorDefault.findNetworks(DnsConfiguratorDefault.java:64)
        at com.mageddo.dnsproxyserver.dnsconfigurator.DnsConfiguratorDefault.configure(DnsConfiguratorDefault.java:33)
        at com.mageddo.dnsproxyserver.dnsconfigurator.DnsConfigurators.configure(DnsConfigurators.java:103)
        at com.mageddo.dnsproxyserver.dnsconfigurator.DnsConfigurators.lambda$configurationHook$0(DnsConfigurators.java:52)
        at java.base@19.0.2/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577)
        at java.base@19.0.2/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358)
        at java.base@19.0.2/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
        at java.base@19.0.2/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
        at java.base@19.0.2/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
        at java.base@19.0.2/java.lang.Thread.run(Thread.java:1589)
        at org.graalvm.nativeimage.builder/com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:775)
        at org.graalvm.nativeimage.builder/com.oracle.svm.core.windows.WindowsPlatformThreads.osThreadStartRoutine(WindowsPlatformThreads.java:178)
<!-- gh-comment-id:1469249779 --> @mageddo commented on GitHub (Mar 15, 2023): Got encoding error so will need to add all charsets or at least cp1252, will test how much it increases the image size ``` Mar 15, 2023 12:08:07 AM com.sun.jna.Native <clinit> WARNING: Failed to get charset for native.encoding value : 'Cp1252' java.nio.charset.UnsupportedCharsetException: Cp1252 at java.base@19.0.2/java.nio.charset.Charset.forName(Charset.java:537) at com.sun.jna.Native.<clinit>(Native.java:133) at com.sun.jna.platform.win32.WinReg$HKEYByReference.<init>(WinReg.java:52) at com.sun.jna.platform.win32.WinReg$HKEYByReference.<init>(WinReg.java:48) at com.sun.jna.platform.win32.Advapi32Util.registryGetKeys(Advapi32Util.java:2039) at com.sun.jna.platform.win32.Advapi32Util.registryGetKeys(Advapi32Util.java:2023) at com.mageddo.jna.net.windows.registry.NetworkRegistry.findNetworksIds(NetworkRegistry.java:48) at com.mageddo.jna.net.windows.registry.NetworkRegistry.findNetworksWithIp(NetworkRegistry.java:56) at com.mageddo.jna.net.windows.registry.NetworkRegistry.findNetworksWithIpIds(NetworkRegistry.java:40) at com.mageddo.net.windows.NetworkWindows.findNetworks(NetworkWindows.java:16) at com.mageddo.dnsproxyserver.dnsconfigurator.DnsConfiguratorDefault.findNetworks(DnsConfiguratorDefault.java:64) at com.mageddo.dnsproxyserver.dnsconfigurator.DnsConfiguratorDefault.configure(DnsConfiguratorDefault.java:33) at com.mageddo.dnsproxyserver.dnsconfigurator.DnsConfigurators.configure(DnsConfigurators.java:103) at com.mageddo.dnsproxyserver.dnsconfigurator.DnsConfigurators.lambda$configurationHook$0(DnsConfigurators.java:52) at java.base@19.0.2/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) at java.base@19.0.2/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358) at java.base@19.0.2/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base@19.0.2/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base@19.0.2/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.base@19.0.2/java.lang.Thread.run(Thread.java:1589) at org.graalvm.nativeimage.builder/com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:775) at org.graalvm.nativeimage.builder/com.oracle.svm.core.windows.WindowsPlatformThreads.osThreadStartRoutine(WindowsPlatformThreads.java:178) ```
Author
Owner

@mageddo commented on GitHub (Mar 15, 2023):

It increases 6mb, I'm adding allcharsets on windows image only

<!-- gh-comment-id:1469292019 --> @mageddo commented on GitHub (Mar 15, 2023): It increases 6mb, I'm adding allcharsets on windows image only
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/dns-proxy-server-mageddo#111
No description provided.