6

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

安装了 Cygwin,sdkman 需要安装 zip 和 unzip 包。现在我收到以下错误:

$ 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,均未更改错误。在我的最后一台机器上开箱即用,但无法弄清楚可能有什么不同。

4

3 回答 3

18

我发现了问题 - 错误的卷曲。事实证明,Windows 10 现在带有 curl,它就在你的道路上。我以为它是 Cygwin 的基础包之一,但事实并非如此,而且 Windows 版本与 SDKMAN 不兼容,即使它可以安装它。使固定:

  1. 根据https://sdkman.io/install卸载部分删除 SDKMAN
  2. 关闭 Cygwin 外壳
  3. 重新运行 Cygwin 设置并确保安装了 curl、zip、unzip 和 tar 包(检查安装说明,以防在撰写本文后添加了更多依赖项)
  4. 按照说明安装 SDKMAN
于 2019-06-10T20:02:56.370 回答
4

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

于 2019-11-23T09:38:16.067 回答
1

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

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

我用经典重定向“>”替换了下面行的“--output”。在我刚刚重新启动 cygwin 之后,该命令终于奏效了。

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

希望有帮助!

于 2019-06-10T12:00:04.187 回答