如何在 shell 中编写用于初始化 sdkman 版本的脚本

How to write script for initializing sdkman versions in a shell

我正在使用 SDKMAN! 并且我正在尝试为我的项目编写 sdkinit.sh 脚本以使用特定工具版本初始化当前 shell。

source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk use groovy 2.4.16
sdk use java 8.0.212-zulu

即使我调用脚本,根据以下输出

,更改不会应用到 shell
➜  dir git: ✗ ./sdkinit.sh

-e Using groovy version 2.4.16 in this shell.

-e Using java version 8.0.212-zulu in this shell.

➜  dir ✗ java -version
openjdk version "12.0.1" 2019-04-16
OpenJDK Runtime Environment Zulu12.2+3-CA (build 12.0.1+12)
OpenJDK 64-Bit Server VM Zulu12.2+3-CA (build 12.0.1+12, mixed mode, sharing)

我在 macOS 上使用 zsh

有没有办法让它工作?

我看到项目中有issue,但还没有开始,所以我正在寻找自己编写的脚本。

脚本是 运行 在单独的 bash 中。您可以尝试执行这样的脚本。

. ./sdkinit.sh

有关详细信息,请查看此处: