5 个回答

你需要看的不是java_home而是path变量里的第一个出现的/bin/java的目录是谁
理解查找顺序

  1. 先从当前目录找

  2. 找不到就从当前的path变量中的目录下找,找到了就调用返回了

1.JAVA_HOME 是你自己在 path 里 设置的 jdk 所在路径,echo %java_home% 就是打印 jdk所在路径.
2.java -version 则是打印java的版本,是java的命令行语句.

java -version 是java的命令行语句.JAVA_HOME是java环境路径

你装了多个Java,环境变量PATH与JAVA_HOME不是同一个。

新手上路,请多包涵

你要先了解两个问题
1.环境变量
环境变量是指操作系统的变量
环境变量的作用 就是给操作系统使用
比如 命令行输入命令 命令行这个软件就是归操作系统管理

跟Java相关的环境变量有两个
1)path
分两种情况 配置和不配置的区别
a.不配置
这个环境也可以不配置 如果不配置 执行Java命令就只能每次先切换到Java安装目录/bin 然后才能执行Java命令 也就是说 没配置的话 就只能在当前目录找Java程序
b.配置
如果配置了Java安装目录/bin 那么就可以在任意目录执行Java命令 即不再需要每次切换到Java安装目录/bin

2)Java_home
也分两种情况 配置和不配置的区别
a.不配置
path的值就是完整安装路径
b.配置
path的值可以写成Java_home/bin 主要目的是 当安装了多个版本的Java 就只需要改变Java_home的值 path的值不用改变

2.Java -version
其实就是path环境变量的值
和Java_home的值不一样 可能是因为以下原因的一种1.path的值没有使用Java_home这个变量 所以Java_home根本没有起作用 2.path的值包含了多个版本的Java路径 只需要保留一个即可

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题