jagodevreede / sdkman-ui

Graphical User Interface for SDKMAN.
Apache License 2.0
19 stars 3 forks source link

ZIP extraction error: short option 'y' not supported #35

Open sherrmann opened 1 month ago

sherrmann commented 1 month ago

Hi, I'm getting this Exception Capture when I try to download any java version:

java.lang.IllegalStateException: Error in download: https://api.sdkman.io/2/broker/download/java/21.0.4-jbr/windowsx64 at io.github.jagodevreede.sdkman.api.http.DownloadTask.download(DownloadTask.java:81) at io.github.jagodevreede.sdkmanui.controller.MainScreenController.lambda$download$25(MainScreenController.java:277) at io.github.jagodevreede.sdkmanui.service.TaskRunner$1.call(TaskRunner.java:25) at io.github.jagodevreede.sdkmanui.service.TaskRunner$1.call(TaskRunner.java:22) at javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.lang.Thread.run(Thread.java:833) at com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:704) at com.oracle.svm.core.windows.WindowsPlatformThreads.osThreadStartRoutine(WindowsPlatformThreads.java:143) Caused by: java.lang.IllegalStateException: Failure during extraction: zip error: Invalid command arguments (short option 'y' not supported) at io.github.jagodevreede.sdkman.api.files.ProcessStarter.runIn(ProcessStarter.java:53) at io.github.jagodevreede.sdkman.api.files.ZipDirectory.zip(ZipDirectory.java:17) at io.github.jagodevreede.sdkman.api.files.PostProcessor.processTarGz(PostProcessor.java:49) at io.github.jagodevreede.sdkman.api.files.PostProcessor.postProcess(PostProcessor.java:33) at io.github.jagodevreede.sdkman.api.http.DownloadTask.postProcess(DownloadTask.java:108) at io.github.jagodevreede.sdkman.api.http.DownloadTask.download(DownloadTask.java:78) ... 8 more

jagodevreede commented 1 week ago

I think you have zip already on your path... I will change it so it will use the bundled zip by default

jagodevreede commented 1 week ago

Can you test it with the bundled software? change the config to: zip: C:\Users\YOURUSER\.sdkman\ui\3rdparty\bin\zip.exe unzip: C:\Users\YOURUSER\.sdkman\ui\3rdparty\bin\unzip.exe

afbeelding

YOURUSER is of course your username that you use in windows.

sherrmann commented 1 week ago

I've tested it again. The error occurs with JetBrains 21.0.4, some other random JDKs are installing fine and I can set them as global/local defaults.

So there might be something wrong with the JetBrains 21.0.4 zip or the way you're handling it.

My paths are C:\Users\bubuf.sdkman\ui\3rdparty\bin\zip.exe and C:\Users\bubuf.sdkman\ui\3rdparty\bin\unzip.exe Thanks for this awesome software. Sorry I didn't understand what you meant by 'bundled software'.

jagodevreede commented 1 week ago

Ahh found the issue, the JetBrains JDK comes as a tar.gz to sdkman-ui needs to untar that, and that was untested as I could not find any other distro's that came as tar. Will look into this.