我试图让 Android Studio 启动器 (studio.sh) 使用我手动安装的 Java(不是系统范围的默认 Java)。由于我已经在我的文件中声明了PATH
,我只是在 shell 脚本中获取了该文件:JAVA_HOME
.bashrc
. /home/foobar/.bashrc
但由于某种原因,$JAVA_HOME/bin/java
脚本仍未将其识别为可执行文件。
我添加了一些日志记录,发现它JAVA_HOME
被扩展为 ~/install/java...,即波浪号运算符没有扩展到主目录。
我做了一些搜索,但找不到任何不扩展的原因。波浪号是 Bash 特有的功能吗(脚本使用#!/bin/sh
,Linux Mint 使用破折号,而不是 bash)?波浪号在某些情况下不起作用吗?
我在声明中替换~
为,然后它起作用了,所以 HOME 在运行时是已知的。$HOME
.bashrc