如何获取asdf的版本作为版本

xxj*_*jnn 13 asdf-vm

在终端中解释,我已经使用asdf安装了一个版本的nodejs,但终端只能看到另一个版本:

> asdf list
nodejs
  12.18.3

> nodejs --version
v8.10.0

> asdf global nodejs 12.18.3 

> nodejs --version          
v8.10.0
Run Code Online (Sandbox Code Playgroud)

将以下内容添加到 .zshrc 的顶部

. $HOME/.asdf/asdf.sh
export PATH=$HOME/.asdf/asdf.sh:$PATH
Run Code Online (Sandbox Code Playgroud)

已重新加载.zshrc

> source ~/.zshrc
Run Code Online (Sandbox Code Playgroud)

没有将本地版本设置为 8.10.0 的本地文件。

我如何才能nodejs --version获得 asdf 认可的全球版本?

xxj*_*jnn 11

我在 Ubuntu 18.04 和 Mac 10.15.7 上都遇到了这个问题。有几个问题。

使用brew (mac) 安装 asdf 无法正确安装 -asdf.sh丢失。文档建议使用 git 安装,这是可行的。

如文档中所述,(下面的灰色框)的运行asdf.sh需要位于 .zshrc (或等效的配置文件设置文件,例如 .bash_profile 等)的底部。它将内容添加到 $PATH 的开头。

. $HOME/.asdf/asdf.sh
Run Code Online (Sandbox Code Playgroud)

当然,您需要source .zshrc在修改后运行,以便终端重新加载更改。这应该会导致更改您的 $PATH,因此当您运行时,echo $PATH您应该有以下内容开头:

/Users/homersimpson/.asdf/shims:/Users/homersimpson/.asdf/bin:/usr/local/opt/qt@5.5/bin: ...other things separated by ':'
Run Code Online (Sandbox Code Playgroud)

which node应该给出类似的东西/Users/homersimpson/.asdf/shims/node。这是 asdf 的垫片位于路径的开头,这使得 asdf 的版本成为您的系统使用的版本。