【问题标题】:sdkman is missing a specific java versionsdkman 缺少特定的 java 版本
【发布时间】:2019-04-23 11:12:20
【问题描述】:

我在 Ubuntu 18.10 上有 SDKMAN 5.7.3+337,它列出了这些可用的 java 版本:

     13.ea.17-open   > * 10.0.2-open         1.0.0-rc-12-grl
     12.0.1-zulu       * 9.0.7-zulu          1.0.0-rc-11-grl
     12.0.1-librca       9.0.4-open          1.0.0-rc-10-grl
     12.0.1-sapmchn      8.0.212-zulu        1.0.0-rc-9-grl
     12.0.1-open         8.0.212-amzn        1.0.0-rc-8-grl
   + 12.0.0-open         8.0.212-librca
     11.0.3-sapmchn    + 8.0.202-zulu
     11.0.3-zulu         8.0.202.j9-adpt
     11.0.3-amzn         8.0.202.hs-adpt
     11.0.3-librca       8.0.202-zulufx
   + 11.0.2-open         7.0.222-zulu
     11.0.2.j9-adpt      6.0.119-zulu
     11.0.2.hs-adpt      1.0.0-rc-15-grl
     11.0.2-zulufx       1.0.0-rc-14-grl
     10.0.2-zulu         1.0.0-rc-13-grl

虽然 Ubuntu 18.04.1 LTS(如 Windows 10 中的 WSL)上的相同 SDKMAN 版本显示:

13.ea.17-open     * 9.0.4-open          1.0.0-rc-11-grl
12.0.1-sapmchn      8.0.212-zulu        1.0.0-rc-10-grl
12.0.1-zulu         8.0.212-amzn        1.0.0-rc-9-grl 
12.0.1-open         8.0.212-librca      1.0.0-rc-8-grl 
12.0.1-librca     + 8.0.202-zulu 
11.0.3-sapmchn      8.0.202.j9-adpt
11.0.3-zulu         8.0.202.hs-adpt
11.0.3-amzn         8.0.202-zulufx
11.0.3-librca     + 8.0.191-oracle
11.0.2.j9-adpt      7.0.222-zulu
11.0.2.hs-adpt      6.0.119-zulu
11.0.2-zulufx       1.0.0-rc-15-grl
10.0.2-zulu         1.0.0-rc-14-grl
10.0.2-open         1.0.0-rc-13-grl
9.0.7-zulu          1.0.0-rc-12-grl

11.0.2-open 丢失的地方。为什么会发生这种情况,我应该如何解决?

PS:我已经运行 sdk selfupdatesdk update

【问题讨论】:

    标签: java sdkman


    【解决方案1】:

    即使没有列出,您仍然可以安装您需要的版本。至少,它对我有用 java 10.0.2-open,就我而言,它没有出现。试一试,运行命令sdk install java 11.0.2-open

    【讨论】:

    • 有人知道这是为什么吗?我很惊讶我没有看到那里列出的 java 14,但是由于您的建议,我能够安装。
    • 你能给我你尝试安装java 14的命令吗,我无法下载那个版本@T.S
    • @sagarr 我用过:sdk install java 14.0.2.hs-adpt
    • 还有一件事@T.S.当我搜索 sdk list java 时,我没有找到第 14 版,你怎么能找到它?
    • @sagarr我从这里oracle.com/ca-en/java/technologies/javase/…检查了可用的版本号,然后我构建了命名自己的sdkman版本{java版本}。{hs - 热点}-{分发采用等}跨度>
    【解决方案2】:

    好像是下载丢失的版本:

    wget https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz
    

    然后解压到:

    ~/.sdkman/candidates/java/
    

    然后重命名提取的目录:

    mv ~/.sdkman/candidates/java/jdk-11.0.2 ~/.sdkman/candidates/java/11.0.2-open
    

    解决问题。

    PS:当然,您必须更改 ~/.sdkman/candidates/java/ 以匹配您的 SDKMAN 安装路径(如果不是默认路径)

    【讨论】:

    • 如果使用下载版本时没有路径问题,最好使用sdk安装本地版本(sdkman.io/usage#localversion
    • 这主要对我有用,但我下载了 Java 15 的 MacOS openJdk 包,它与 Mac 包的预期目录匹配(即 Contents/Home Contents/MacOS )。所以我不得不移动一些东西,以便使 Candidate/15.0.2-open 目录包含标准的 JAVA_HOME 布局( bin/lib/ 等...)
    • "这样 Candidate/15.0.2-open 目录包含标准的 JAVA_HOME 布局( bin/lib/ 等...)" - 我很确定这就是它应该的方式,但只是一种预感。
    猜你喜欢
    • 1970-01-01
    • 2011-06-07
    • 2011-12-21
    • 1970-01-01
    • 2015-04-10
    • 2020-01-19
    • 1970-01-01
    • 2019-04-22
    • 1970-01-01
    相关资源
    最近更新 更多