JAVA_HOME环境配置

2023-05-16

太久没接触java了,连最基本的都忘记了。。。做个笔记,顺便重新理解一下

转载自:http://blog.csdn.net/wxq1987525/article/details/8045872


java环境变量配置

windows xp下配置JDK环境变量:

      1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08;

 

  2.安装完成后,右击“我的电脑”,点击“属性”;

 

      3.选择“高级”选项卡,点击“环境变量”;

 

      4.在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”;

 

      5.JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:\java\jdk1.5.0_08,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);

     

 

       Path使得系统可以在任何路径下识别java命令,设为:

 

%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin%JAVA_HOME%\jre\bin可不配置

 

    CLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:

 

.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar (要加.表示当前路径)

 

  %JAVA_HOME%就是引用前面指定的JAVA_HOME;

 

       6.“开始”->;“运行”,键入“cmd”;

 

       7.键入命令“java -version”,“java”,“javac”几个命令,出现画面,说明环境变量配置成功;

 

       8.好了,打完收工。下面开始你的第一个java程序吧。

 

下面讲讲java几个环境变量的含义和linux下的配置方法:

 

通常,我们需要设置三个环境变量:JAVA_HOME、PATH 和 CLASSPATH。

 

JAVA_HOME:该环境变量的值就是 Java 所在的目录,一些 Java 版的软件和一些 Java 的工具需要用到该变量,设置 PATH 和 CLASSPATH 的时候,也可以使用该变量以方便设置。

 

PATH:指定一个路径列表,用于搜索可执行文件的。执行一个可执行文件时,如果该文件不能在当前路径下找到,则依次寻找 PATH 中的每一个路径,直至找到。或者找完 PATH 中的路径也不能找到,则报错。Java 的编译命令 (javac),执行命令 (java) 和一些工具命令 (javadoc, jdb 等) 都在其安装路径下的bin 目录中。因此我们应该将该路径添加到 PATH 变量中。

 

CLASSPATH:也指定一个路径列表,是用于搜索 Java 编译或者运行时需要用到的类。在 CLASSPATH 列表中除了可以包含路径外,还可以包含 .jar 文件。Java 查找类时会把这个 .jar 文件当作一个目录来进行查找。通常,我们需要把 JDK 安装路径下的 jre\lib\rt.jar (Linux: jre/lib/rt.jar) 包含在 CLASSPATH 中。

 

PATH 和 CLASSPATH 都指定路径列表,列表中的各项 (即各个路径) 之间使用分隔符分隔。在 Windows 下,分隔符是分号 (;),而在 Linux 下,分隔符是冒号 (:)。

 

下面分别说明三个环境变量在 Windows 和 Linux 下如何设置,不过在此之前,我们需要做个假设。假设 JDK 在 Windows 下的安装路径是 C:\jdk\,在 Linux 下的安装路径是 /usr/local/jdk/。那么,安装后的 JDK 至少会包括如下内容:

 

C:\jdk (/usr/local/jdk)

|-- bin

|-- demo

|-- include

|-- jre

| |-- bin

| `-- lib

`-- lib

 

***** 在 Windows 下设置

 

Windows 下使用 set 命令设置环境变量,为了使每一次启动计算机都设置这些环境变量,应该在系统盘根目录下的 autoexec.bat 文件中进行设置,如:

 

set JAVA_HOME=C:\jdk

set PATH=%JAVA_HOME%\bin;C:\Windows;C:\Windows\Command

set CLASSPATH=%JAVA_HOME%\jre\lib\rt.jar;.

 

有些版本的 Windows 不能用 %变量名% 来替换环境变量的内容,那么就只好直接写 C:\jdk 而不是%JAVA_HOME% 了。另外,C:\Windows 和 C:\Windows\Command 是 Windows 会自动加入路径的,所以可以从设置中去掉。如果在 autoexec.bat 中已经设置了 PATH,那只需要将%JAVA_HOME%\bin 加到原来设置 PATH 的那条语句中就行了。

 

CLASSPATH 也可以根据需要设置或者加入其它的路径,比如你想把自己写的一些类放在 C:\java 中,就可以把 C:\java 也添加到 CLASSPATH 中去,set CLASSPATH=%JAVA_HOME%\jre\lib\rt.jar;C:\java;.。

 

注意,在 CLASSPATH 中包含了一个“当前目录 (.)”。包含了该目录后,就可以到任意目录下去执行需要用到该目录下某个类的 Java 程序,即使该路径并未包含在 CLASSPATH 中也可以。原因很简单:虽然没有明确的把该路径包含在 CLASSPATH 中,但 CLASSPATH 中的 “.” 在此时就代表了该路径,如:

 

假设在 C:\java 目录下有可运行的类 HelloJava.class,那么

 

C:\> set CLASSPATH=C:\jdk\jre\lib\rt.jar;. // 设置 CLASSPATH 环境变量,注意最后有一个 “.”

C:\> cd java // 转到 C:\java 目录

C:\java> java HelloJava // 运行 HelloJava

Hello, Java. // 运行结果

C:\java> _

 

**** 在 Linux 下设置

 

Linux 下使用“变量名=变量值”设置变量,并使用 export 命令将其导出为环境变量。为了使每一次登录都自动设置好这些变量,你需要在 ~/.bash_profile 里或者 ~./bashrc 里进行设置,如

 

export JAVA_HOME=/usr/local/jdk

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=$JAVA_HOME/jre/lib/rt.jar:.

 

设置 PATH 时用的 $JAVA_HOME 是指替换变量 JAVA_HOME 的值到 $JAVA_HOME 所在位置。如上句实际就是 export PATH=/usr/local/jdk/bin:$PATH。这句中 $PATH 也是同样的作用,不过这里的 PATH 是指以前设置的 PATH 变量的值,而非本次设置 PATH 变量的值。

 

注意,在 CLASSPATH 中包含了一个“当前目录 (.)”。包含了该目录后,就可以到任意目录下去执行需要用到该目录下某个类的 Java 程序,即使该路径并未包含在 CLASSPATH 中也可以。原因很简单:虽然没有明确的把该路径包含在 CLASSPATH 中,但 CLASSPATH 中的 “.” 在此时就代表了该路径,例如

 

假设在 /home/fancy/java 目录下有可运行的类 HelloJava.class,那么

 

[fancy@matrix fancy]$ export CLASSPATH=/usr/local/jdk/jre/lib/rt.jar:. // 设置 CLASSPATH,注意最后的“.”

[fancy@matrix fancy]$ cd ~/java // 转到 /home/fancy/java

[fancy@matrix java]$ pwd // 显示当前目录

/home/fancy/java // 当前目录是 /home/fancy/java

[fancy@matrix java]$ java HelloJava // 运行 HelloJava

Hello, Java // 运行结果

[fancy@matrix java]$ _

 

 

***** 实例分析

 

只是操作系统不同,略有差别。

 

两个例子都提到一个“可运行的类”,它是指包含了 public static void main(String[] args) 方法的类,这将在下一章 HelloJava 一节中详述。例中的 CLASSPATH 均未包含 HelloJava.class 所在的目录(C:\java, /home/fancy/java),但是均包含了当前目录 (.)。因此转到包含 HelloJava.class 的目录下去执行 java HelloJava,在 Java 寻找到 CLASSPATH 中的“. (当前目录,C:\java, /home/fancy/java)”时,找到了 HelloJava.class,运行成功。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JAVA_HOME环境配置 的相关文章

  • HPSOCKET VS2015编译的报错的问题解决

    xff08 vs2010向2015编译升级 xff09 提示无法打开包括文件 SDKDDKVer h No such file or directory 2 fatal error C1083 无法打开包括文件 new h No such
  • NFC NDEF C#

    NFC NDEF C 背景 NTF需要使用C 写的程序封装NDEF协议 C ndef协议代码地址 xff1a https github com andijakl ndef nfc releases 实际项目中引用库可以采用这个方法 环境 x
  • 关于顶层const和底层const

    之前有段时间对于这个一直比较模糊不理解 xff0c 网上很多对于这个底层和顶层const的理解都是针对指针做出解释 xff0c 漏掉基本数据类型和引用的解释 xff0c 最终发现自己也是马虎了 xff0c 在C 43 43 primer中有
  • PYTHON 声音文件 频谱分析 FFT

    import os import time import wave import numpy as np import numpy core dtype ctypes import multiprocessing import matplo
  • QT 声音频率和振幅以及相位

    首先这个炫酷的界面不是我写的 xff0c 是QT自带的例子我修改的 这个图下面的二维图就是我修改的部分 xff0c QT自带的是黑色和蓝色的部分 代码在哪里呢 xff1f 版本号 xff1a QT 5 11 3 版本号对不准 xff0c 下
  • 苹果 IOS 早期版本 NDEF的读写问题 C#

    1 首先C 的NDEF的库安卓 xff1a https mp csdn net postedit 91383417 2 然后在封装NDEF的前面数据前面还有加一堆数据 xff0c TAG类型 block data 0 61 0xE1 blo
  • 安装QT QXLSX的过程

    参考文档 xff1a https blog csdn net yajlv article details 52927462 参考这个文档安装中强调的问题 一 Perl5 下载Perl5地址 xff1a https www perl org
  • 注册C++单例到QML中出现注册不成功的问题

    https blog csdn net guimaxingtian article details 82867184 int qmlRegisterSingletonType const char uri int versionMajor
  • WIN 32调用含有界面的QT dll

    转载文章 xff1a https blog csdn net shuishanga article details 52183159 新项目需要 xff0c 制作 WIN32项目调用QT xff08 含界面的DLL xff09 win32
  • ubuntu16部署jenkins步骤,以及修改jenkins存储主目录

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言 一 安装JDK xff1f 二 安装jenkins 1 导入jenkins存储库密钥 2 将jenkins的存储库添加到u
  • python中for in的用法python中for in的用法

    for in 说明 xff1a 也是循环结构的一种 xff0c 经常用于遍历字符串 列表 xff0c 元组 xff0c 字典等 格式 xff1a 1 2 for x in y 循环体 执行流程 xff1a x依次表示y中的一个元素 xff0
  • 免费的天气预报接口

    第一种 xff1a xff08 json格式 xff09 API xff1a http wthrcdn etouch cn weather mini city 61 常州 第二种 xff1a xff08 xml格式 xff09 API xf
  • C++ 字符串和数字拼接

    方法一 xff1a include lt iostream gt include lt string gt include lt sstream gt using namespace std int main int a 61 2 stri
  • CMFCShellTreeCtrl和CMFCShellListCtrl快速构建资源管理器

    系统环境 xff1a Windows 7 软件环境 xff1a Visual Studio 2008 SP1 本次目的 xff1a 实现CMFCShellTreeCtrl xff08 CBCGPShellTree xff09 和CMFCSh
  • Linux修改root密码(简单实用)

    前言 之前的虚拟Linux系统 xff0c 时间长忘了使用 xff0c 密码忘了 xff0c 这里记录一下修改步骤 xff0c 超简单方便使用 直接上干货 修改root密码 xff1a 输入指令passwd root 然后设置密码即可 xf
  • 绕过宝塔面板强制登录注册的方法,宝塔不想注册的可以收藏

    一 绕过宝塔面板强制登录注册的方法 xff0c 宝塔不想注册的可以收藏 绕过宝塔面板强制登录注册的方法 xff0c 宝塔不想注册的可以收藏 xff0c 看了看网上的一些方法 xff0c 自己也总结收集了一些方法 1 程序在变化中也不确定是否
  • 最近面试的软件测试笔试题笔试题(已整理参考答案)

    1 常见的测试用例设计方法都有哪些 xff1f 分别以具体的例子来说明这些方法在测试用例设计工作中的应用 1 等价类划分 等价类是指某个输入域的子集合 在该子集合中 各个输入数据对于揭露程序中的错误都是等效的 并合理地假定 测试某等价类的代
  • 从Linux服务器下载文件和文件夹到本地命令

    从Linux 服务器上传或者下载文件到本地除了使用FTP外 xff0c 还可以通过Linux命令来实现 xff0c Linux服务器与本地电脑之间传输文件的命令及使用方法 xff1a 1 使用scp命令 命令格式 xff1a scp 参数
  • Jmeter+Ant+Jenkins接口自动化测试平台搭建

    平台简介 一个完整的接口自动化测试平台需要支持接口的自动执行 xff0c 自动生成测试报告 xff0c 以及持续集成 Jmeter支持接口的测试 xff0c Ant支持自动构建 xff0c 而Jenkins支持持续集成 xff0c 所以三者
  • ubuntu将主文件夹的文件夹中文名称改为英文

    许多人在使用ubuntu时使用汉语的 xff0c 但是主文件夹下的文件夹也随之变成了中文 xff0c 导致命令行下输入文件夹名称非常的困难 xff0c 那么怎么简单的把名字改成英文的呢 xff1f xff08 也不知道哪个版本开始不出现下面

随机推荐