【问题标题】:sdk: command not foundsdk:找不到命令
【发布时间】:2019-08-17 00:48:32
【问题描述】:

我已经安装了 SDKMAN!以我服务器上的 root 身份,并希望我的所有用户(开发人员)都可以访问它。

为此我做到了:

export SDKMAN_DIR="/usr/local/sdkman" && curl -s "https://get.sdkman.io" | bash
source "/usr/local/sdkman/bin/sdkman-init.sh"

然后对于一个用户,我在 .profile 和 .bashrc 的末尾添加了这些行:

#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
export SDKMAN_DIR="/usr/local/sdkman"
[[ -s "/usr/local/sdkman/bin/sdkman-init.sh" ]] && source "/usr/local/sdkman/bin/sdkman-init.sh"

来自该用户(非 root),sdk 命令有效,但是当我尝试安装 Java 时,我收到很多文件夹和文件权限错误,这没关系,因为大多数是由 root 创建的,而不是我的当前用户。

那我试试:

sudo sdk install java 9.0.4-open

得到:

sudo: sdk: command not found

不知道我做错了什么,也许我需要安装 SDKMAN!对于我服务器上的每个用户,这会很痛苦。

有什么建议吗?

【问题讨论】:

  • 运行type sdk,它可能会说它是一个shell函数。
  • sudo su - 然后source /usr/local/sdkman/bin/sdkman-init.sh - 您也可以为root 添加.profile 条目(然后只是sudo su -) - 在运行sdk之前。
  • @ElliottFrisch 应该在普通用户每次想要运行 sdk 时都这样做吗?还是那是永久的?
  • @ElliottFrisch 遵循这些步骤,与以 root 执行 SDKMAN 相同,并且 Java 仅为 root 安装,想法是所有用户都可以使用。
  • 这不是 sdkman 的工作方式。如果您还没有创建用户,您可以将设置复制到/etc/skel

标签: java sdkman


【解决方案1】:

似乎无法安装 SDKMAN!一次作为 root 并且可供所有用户使用。我猜每个用户都需要安装它,然后每个用户都需要安装它自己的 Java 版本,如果我管理一个服务器并且需要多个用户具有相同的配置,这会很痛苦。

【讨论】:

    猜你喜欢
    • 2018-02-18
    • 1970-01-01
    • 2018-12-20
    • 2020-03-07
    • 1970-01-01
    • 1970-01-01
    • 2018-10-31
    • 2021-11-14
    • 2021-02-10
    相关资源
    最近更新 更多