cygwin上的sdkman无法安装

sdkman on cygwin can't install

我正在设置一台新机器并在 Cygwin 上安装 sdkman 以安装 Java。我在我以前的机器上有这个确切的设置,也是 Win 10。

已安装 Cygwin,并且需要 sdkman,已安装 zip 和解压缩包。现在我收到以下错误:

$ sdk i java 11.0.3-zulu

Downloading: java 11.0.3-zulu

In progress...

Warning: Failed to create the file
Warning: /home/whyph/.sdkman/tmp/D2txrZkztdcZKSIltTtxclUhHkzF9yIf.bin: No such
Warning: file or directory

curl: (23) Failed writing body (0 != 14095)
mv: cannot stat '/home/whyph/.sdkman/tmp/D2txrZkztdcZKSIltTtxclUhHkzF9yIf.bin': No such file or directory

尝试以管理员身份禁用 Windows 防火墙和 运行 Cygwin,均未更改错误。在我的最后一台机器上开箱即用,但无法弄清楚可能有什么不同。

我最近遇到了同样的问题,我设法让它以某种方式工作。

在sdkman源文件中,我修改了.sdkman/src/sdkman-install.sh第150行。

我用经典的重定向“>”替换了下行的“--output”。 在我刚刚重新启动cygwin并且命令终于起作用之后。

__sdkman_secure_curl_download "${download_url}" --output "${binary_input}"

希望对您有所帮助!

我发现了问题 - 卷曲错误。事实证明,Windows 10 现在带有 curl,它就在您的路径上。我假设它是 Cygwin 的基础包之一,但它不是,并且 Windows 版本与 SDKMAN 不兼容,即使它可以安装它。修复:

  1. 根据 https://sdkman.io/install 卸载部分删除 SDKMAN
  2. 关闭 Cygwin shell
  3. 重新运行 Cygwin 安装程序并确保 curl、zip、unzip 和 tar 包 已安装(检查安装说明以防更多 自撰写本文以来添加了依赖项)
  4. 按照说明安装 SDKMAN

最近我遇到了同样的问题,原因很简单...我忘记在我的 Cygwin 上安装 cURL。希望对您有所帮助!