网站首页 > java教程 正文
JAVA_HOME 是一个操作系统 (OS) 环境变量,可以在安装 Java Development Kit (JDK) 或 Java Runtime Environment (JRE) 后进行设置。JAVA_HOME 环境变量指向安装 JDK 或 JRE 的文件系统位置。此变量应在所有安装了 Java 的操作系统上配置,包括 Windows、Ubuntu、Linux、Mac 和 Android。
本地安装的 Java 运行时实际上并未使用 JAVA_HOME 环境变量。相反,安装在桌面计算机上的其他需要 Java 运行时的程序将在操作系统中查询 JAVA_HOME 变量以找出运行时的安装位置。找到 JDK 或 JRE 安装的位置后,这些程序可以启动基于 Java 的进程,启动 Java 虚拟机并使用命令行实用程序,例如 Java 存档实用程序或 Java 编译器,这两者都打包在 Java 安装的\bin 目录。
如何在 Windows 上设置 JAVA_HOME
用户可以通过“编辑系统变量”窗口中的管理选项在 Windows 上设置 JAVA_HOME。使用环境变量编辑器,用户可以添加一个名为 JAVA_HOME 的新系统变量,并为其分配 JDK 安装目录位置的值。
如何找到 JAVA_HOME
对于用户来说,轻松找到 JAVA_HOME 值并验证它是否设置正确非常重要。找到 JAVA_HOME 的一种方法是打开环境变量编辑器并查看其分配的值。另一种选择是在命令窗口中回显 JAVA_HOME。
启动时获取 JAVA_HOME 的程序
任何 Java 编写的程序都需要一个基于 Java 的环境才能运行。需要正确配置 JAVA_HOME 变量的程序包括:
Eclipse、NetBeans 和 Android Studio
Apache Tomcat 和 WebSphere Portal
JProfiler 和 Java 任务控制
Maven 和 ANT
Gradle 和 Groovy
Jenkins 和 Hudson CI 工具
exe4j
甚至像 Minecraft、SimCity 和某些版本的视频游戏也需要配置 JAVA_HOME。
常见的 JAVA_HOME 错误
如果任何需要 Java 运行时的程序在启动时找不到 JAVA_HOME 环境变量,或者 JAVA_HOME 环境变量配置错误,则会导致显示以下一些错误消息:
存在 Java 安装,但 JAVA_HOME 设置不正确
JAVA_HOME 设置为无效目录
JAVA_HOME 未正确定义
未设置 JAVA_HOME 环境变量
找不到 JAVA_HOME 命令
在你的环境中找不到 JAVA_HOME
JAVA_HOME 不指向 JDK
一旦用户确认 JAVA_HOME 变量确实已设置并且变量已被分配了正确的值,这些问题中的大部分都可以解决。
JAVA_HOME 与 JRE_HOME
Java 运行时环境可以通过以下两种方式之一安装在计算机上。第一种方法是下载并安装 JRE,它是一个 Java 运行时环境,仅此而已。第二种方法是下载并安装 JDK,它提供了 Java 运行时以及各种辅助软件开发的工具。一些程序只需要 JRE 即可运行,而另一些程序则需要完整的 JDK。只需要 JRE 的程序通常会查找指向 JRE 安装的 JRE_HOME,而不是查找应指向 JDK 安装的 JAVA_HOME。
JAVA_HOME 与 PATH 变量
除了 JAVA_HOME 的配置,同时更新操作系统的 PATH 变量也很有用。使用 PATH,可以添加 Java 安装的 \bin 目录,这使得打包在 JDK 或 JRE 中的所有各种 Java 实用程序都可以在命令行的任何位置使用。因此,如果程序找不到 JAVA_HOME 变量,它可能仍然能够通过查看哪些实用程序已通过 PATH 可用来访问 Java 运行时工具。
猜你喜欢
- 2024-09-12 Java发展简史(java发展史介绍)
- 2024-09-12 Java教程:Maven是什么?Maven能用来做什么?
- 2024-09-12 java基础(java基础面试题)
- 2024-09-12 3分钟带你全面了解JavaEE(手势舞完整版3分钟《一起向未来)
- 2024-09-12 一篇文章彻底搞懂Java的大Class到底是什么
- 2024-09-12 Java:什么是Spring框架?(spring框架到底如何理解)
- 2024-09-12 今天聊一聊什么是Java中的锁(java 各种锁)
- 2024-09-12 JVM详解,一篇文章带你入门(jvm jit)
- 2024-09-12 初识 Java 里类的概念(java中类的意思)
- 2024-09-12 什么是 Java 事件?(什么是java中的事件处理)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)