MacOS 用sdkman安装Tomcat 遇到JAVA_HOME问题
本机信息
- MacBook Pro
- macOS big sur 版本 11.7.10
过程
- 我先通过sdk 安装了 java17
sdk install java <版本>
- 设置了相关环境变量,测试了JAVA_HOME
echo $JAVA_HOME
- 然后用sdk安装了tomcat
sdk install tomcat
,版本为10.
安装好之后,进入到tomcat的bin 目录下面,执行startup.sh
报错信息:
The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
明明环境中有JAVA_HOME但就是找不到
解决方式
在网上查找到,JAVA路径和setclasspath.sh有关
在setclasspath.sh中添加你的java安装路径
如果你的java也是通过sdk安装的,那么默认路径应该是$SDKMAN_DIR/candidates/java/current
$SDKMAN_DIR 可以通过echo $SDKMAN_DIR
查找
# -----------------------------------------------------------------------------
# Set JAVA_HOME or JRE_HOME if not already set, ensure any provided settings
# are valid and consistent with the selected start-up options.
# -----------------------------------------------------------------------------
export JAVA_HOME=<your java path>
# Make sure prerequisite environment variables are se
结果
成功解决