以下是我尝试更新环境变量JAVA_HOME
if "%JAVA_HOME%" == "" (
where java > java_path
echo File contents is
type java_path
set /p JAVA_HOME=< java_path
echo %JAVA_HOME:~0,-13%
set JAVA_HOME=%JAVA_HOME:~0,-13%
)
我得到的输出是
File contents is
C:\Program Files (x86)\Java\jre7\bin\java.exe
~0,-13
由于~0,-13
为C:\Program Files (x86)\Java\jre7
where java
而不是C:\Program Files (x86)\Java\jre7\bin\java.exe
。
奇怪的是,如果我删除if "%JAVA_HOME%" = ""
条件,它会成功。