SDKMAN(updating)


sdkman是一种对java开发环境中管理软件的工具.

Q & A

如果处理maven的配置环境

(base) sven@LQQD0361:/mnt/d/src/bl_migration/cdp_support$ which mvn
/home/sven/.sdkman/candidates/maven/current/bin/mvn

maven对应的配置文件都在/home/sven/.sdkman/candidates/maven/current/conf

SDKMAN 安装软件失败 或是安装本地软件不识别

安装本地软件sdk install java 8.0.291-orc /opt/jdk1.8.0_291

设置默认sdk d java 8.0.291-orc

查看是否配置成功sdk list java

未配置成功

sven@LQQD0053:~/.sdkman/candidates/java$ sdk list java

================================================================================
Available Java Versions
================================================================================
 Vendor        | Use | Version      | Dist    | Status     | Identifier
--------------------------------------------------------------------------------
 AdoptOpenJDK  |     | 16.0.1.j9    | adpt    |            | 16.0.1.j9-adpt
               |     | 16.0.1.hs    | adpt    |            | 16.0.1.hs-adpt
...
 SAP           |     | 16.0.1       | sapmchn |            | 16.0.1-sapmchn
               |     | 11.0.11      | sapmchn |            | 11.0.11-sapmchn
 TravaOpenJDK  |     | 11.0.9       | trava   |            | 11.0.9-trava
               |     | 8.0.232      | trava   |            | 8.0.232-trava
 Unclassified  | >>> | 8.0.291      | none    | local only | 8.0.291-orc
================================================================================
Use the Identifier for installation:

    $ sdk install java 11.0.3.hs-adpt

之后尝试安装库资源中存在的java
再测试是否成功,结果是成功的
又再尝试切换默认java为本地安装的,再尝试看是否设置成功

sven@LQQD0053:~/.sdkman/candidates/java$ sdk java list

Invalid command: java


Usage: sdk <command> [candidate] [version]
       sdk offline <enable|disable>

   commands:
       install   or i    <candidate> [version] [local-path]
....
       update
       flush             [archives|tmp|broadcast|version]

   candidate  :  the SDK to install: groovy, scala, grails, gradle, kotlin, etc.
                 use list command for comprehensive list of candidates
                 eg: $ sdk list
   version    :  where optional, defaults to latest stable if not provided
                 eg: $ sdk install groovy
   local-path :  optional path to an existing local installation
                 eg: $ sdk install groovy 2.4.13-local /opt/groovy-2.4.13


Stop! list is not a valid candidate.

最后解决方法为
(4条消息) SDKMAN 安装软件失败_小小书童-CSDN博客

出现该错误是由于sdk缓存的候选人列表已经损坏,你需要清除候选人列表,重新打开一个终端重试。

# 清除候选人列表
sdk flush candidates

再次设置默认java就成功了;
期间也可以通过echo $JAVA来查看设置的路径是否有问题,因为设置Identifier长度大于15时会出现错误,但有时间竟然不提示这个错误,并且路径是之前的


版权声明:本文为rustwei原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。