没有为命令 java - asdf 设置版本
Posted
技术标签:
【中文标题】没有为命令 java - asdf 设置版本【英文标题】:No version set for command java - asdf 【发布时间】:2022-01-20 22:58:49 【问题描述】:我现在在 bash 环境中的 Lubuntu 机器上使用 asdf,它给了我信息:
stephane@stephane-pc:~/dev$ cd
No version set for command java
Consider adding one of the following versions in your config file at
java adoptopenjdk-15.0.2+7
我只有一个 asdf 项目,它位于 ~/work/example/dev/ExampleBooster
目录中:
12:07 $ cat .tool-versions
java adoptopenjdk-15.0.2+7
nodejs 12.13.1
tflint 0.28.1
terraform-validator 3.1.3
packer 1.7.2
terraform 0.15.3
adr-tools 3.0.0
pre-commit 1.21.0
maven 3.8.4
我的asdf
配置~/dev/commands/asdf.config.sh
文件包含:
#!/bin/bash -x
source $HOME/.asdf/asdf.sh
source $HOME/.asdf/completions/asdf.bash
# Setting the JAVA_HOME variable
. ~/.asdf/plugins/java/set-java-home.bash
# If asdf provides the maven plugin then use the plugin instead of the system maven if any
if asdf current maven > /dev/null 2>&1; then
export MAVEN_HOME=$(asdf where maven)
export PATH=$PATH:$MAVEN_HOME/bin
fi
更新:我在 ~/.tool-versions
文件中添加了行 java adoptopenjdk-15.0.2+7
并解决了问题。
【问题讨论】:
你用的是哪个java插件? 我这样做了:asdf plugin-add java
和 asdf install java adoptopenjdk-15.0.2+7
【参考方案1】:
我在本地尝试过,它按预期工作。
步骤
安装所需工具:
apt-get update -y && apt-get -y install curl git dirmngr gpg gawk && git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.8.1 && . $HOME/.asdf/asdf.sh
添加java插件
asdf plugin add java https://github.com/halcyon/asdf-java.git
安装它
asdf install java adoptopenjdk-15.0.2+7
配置它
asdf global java adoptopenjdk-15.0.2+7
经过前面的步骤,java就可以使用了,出现在$HOME/.tool-versions
我不需要任何其他配置即可在系统上安装 Java。
码头工人
只是为了尝试或确定您的系统可能配置错误,您可以使用 docker 来拥有一个全新的临时 ubuntu。在这种环境下,您可以从头开始尝试 asdf:
docker run -it ubuntu bash
来源
https://asdf-vm.com/guide/getting-started.html#_6-set-a-version https://github.com/halcyon/asdf-java【讨论】:
这个问题从未出现在我安装了 Java 插件和 Java 语言的项目中。仅当进入我未安装 Java 语言的目录时才会显示。以上是关于没有为命令 java - asdf 设置版本的主要内容,如果未能解决你的问题,请参考以下文章
JPackage 版本错误(%JAVA_HOME% 设置为正确目录)