You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取SDKMAN所有版本(含隐藏版)?解决部分候选版本返回空问题

解决SDKMAN查看所有版本(含Java旧版本)的问题

核心问题原因

SDKMAN的API针对不同候选(尤其是Java)有特殊的版本分发逻辑,你用的通用版本API对Java不适用——Java的版本数据是按**发行商(vendor)**拆分的,不是直接按平台统一返回。

正确的API调用方式

1. 获取Java的所有发行商

先调用这个接口拿到Java的所有可用发行商:

https://api.sdkman.io/2/candidates/java/vendors

返回内容会包含adoptopenjdk、temurin、zulu这类发行商标识。

2. 获取指定发行商的Java所有版本

拿到发行商后,用以下格式的接口获取对应发行商的全量版本(替换{vendor}为实际发行商,{platform}为你的系统,比如win/linux/osx):

https://api.sdkman.io/2/candidates/java/{platform}/{vendor}/versions/all

比如Windows上查看Temurin的所有Java版本:

https://api.sdkman.io/2/candidates/java/win/temurin/versions/all

3. 通用候选的全量版本获取

对于maven、gradle这类非Java的候选,你之前用的接口是有效的:

https://api.sdkman.io/2/candidates/{candidate}/{platform}/versions/all

CLI层面的替代方案

如果不想直接调用API,也可以用SDKMAN的CLI命令强制查看全量版本:

  • 针对Java,指定发行商查看全量:
    sdk list java temurin
    
  • 通用候选直接加all参数:
    sdk list maven all
    

补充说明

SDKMAN默认sdk list只显示"稳定版"和"近期版本",旧版本会被隐藏,加all参数或者调用对应API才能拿到完整列表。Java因为涉及多发行商,所以需要额外指定发行商维度才能获取全量版本。

内容的提问来源于stack exchange,提问作者tbeernot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 20:39:53