zoukankan      html  css  js  c++  java
  • Java的 JAVA_HOME、Path、CLASSPATH环境变量小结

    刚学Java的时候,很多jdk配置教程都要求设置JAVA_HOME、Path、CLASSPATH3个变量。而Java官网有这么一句话:jdk1.5之后的版本在安装时不用设置CLASSPATH变量。今天我就以jdk1.5为例,总结下三者的区别。

    我们要先了解环境变量什么作用。

    按下windows键+R打开运行窗口,在里面直接输入system32,回车之后就打开了system32这个文件夹,为什么?

    同样的操作我们输入game,为什么没有打开D:game这个文件夹呢?其实这就是“环境变量”的作用了。

    系统就会先在当前目录查找 应用程序(机器可识别的机器码或目录),如果有就会执行文件或打开目录,否则就会在Path中指定的路径中找,

    1、Windows 下环境变量设置

    Path(核心)
    当我们安装完jdk之后,打开cmd(在非安装目录的路径下)输入javac、java,会提示找不到命令。我们需要将命令所在的路径添加到Path系统变量中,这时,系统就可以找到可执行文件了。

    Windows在查找可执行文件是这样的:在终端输入java时,系统就会先在当前目录查找java程序,如果有就会执行java,否则就会在Path中指定的路径中找,因为我们在PATH配置了...jdkin,系统会在这个路径下找到Java程序并执行。否则就提示找不到命令。Path的作用其实就是方便我们使用一些命令。

    JAVA_HOME(为了方便设置path)
    JAVA_HOME里面的内容是JDK安装目录。其实不设置JAVA_HOME也是可以的,只要有Path就行了。但是设置JAVA_HOME可以方便在Path中使用、更新JDK目录。比如,jdk的安装路径是C:jdk1.5.0_22,Path设置为C:jdk1.5.0_22in,而当我们把JAVA_HOME设为C:jdk1.5.0_22时,设置Path就可以写成%JAVA_HOME%in,以后当我们使用其他版本的jdk,就可以只修改JAVA_HOME的值,此外,当我们要使用Redis等组件时,也可以灵活使用JAVA_HOME做些改动。

    CLASSPATH(JDK 1.5之后,不必设置)
    编译、运行Java程序时,JRE会去该变量指定的路径中搜索所需的类(.class)文件,很多配置教程都让我们设置CLASSPATH环境变量为:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar,但是其实没有必要。以jdk1.5为例,当我们配置完成后,写个HelloWorld.java。

     

     在cmd中进入文件目录,可以发现依然可以编译、运行

     

     再查看运行的详细信息,可以看到没有CLASSPATH的情况下rt.jar、当前目录也是可以被JVM找到的。

     

     

     也就是说,在JDK 1.5之后,完全可以不配置这个变量。不配置CLASSPATH,JRE会自动搜索当前路径下的类文件。编译、运行时,系统可以自动加载dt.jar和tools.jar文件中的Java类。

    一般配置为:

    系统环境变量:

    CLASSPATH系统环境变量   .;%JAVA_HOME%lib;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar

    JAVA_HOME系统环境变量 D:Program FilesJavajdk1.8.0_201

    path 系统环境变量:

    %SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;C:Program FilesMicrosoftWeb Platform Installer;C:Program Files (x86)Microsoft ASP.NETASP.NET Web Pagesv1.0;C:Program FilesMicrosoft SQL Server110ToolsBinn;D:Program FilesVisualSVN Serverin;D:Program FilesTortoiseSVNin;D:Program FilesTortoiseGitin;d:Program Files (x86)Gitcmd;C:Program FilesMicrosoft SQL Server130ToolsBinn;C:Program Filesdotnet;%JAVA_HOME%in;%JAVA_HOME%jrein;C:Program FilesRedis;C:Program Files odejs

    Windows10 配置不需要加分号,再加路径,一个路径新建一个就行。配置玩JAVA_HOME后 Path路径配置如下:

    这里说一下基础知识,如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK。 

    简单来说,JRE可以支撑Java程序的运行,包括JVM虚拟机(java.exe等)和基本的类库(rt.jar等),JDK可以支持Java程序的开发,包括编译器(javac.exe)、开发工具(javadoc.exe、jar.exe、keytool.exe、jconsole.exe)和更多的类库(如tools.jar)等。

    2、Linux操作系统的环境变量和用户变量文件系统相对简单
    比方说 系统变量的文件都在/etc/profile 下面 ,而用户文件是在 ~/bash_profile下面(每个用户文件不在同一个)

    Linux设置环境变量:

    先打开配置环境变量文件

    $ vi ~/.bash_profile

    再设置环境变量

    export M2_HOME=/usr/local/apache-maven-3.6.0

    export PATH=$PATH:$M2_HOME/bin

    Linux sudo命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。

    export 可新增,修改或删除环境变量

    进入vi的命令

    vi filename :打开或新建文件,并将光标置于第一行首 
    vi +n filename :打开文件,并将光标置于第n行首 
    vi + filename :打开文件,并将光标置于最后一行首 
    vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 
    vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename 
    vi filename....filename :打开多个文件,依次进行编辑

    linux中vi和vim的区别

    它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。

     

     


    参考原文链接:https://blog.csdn.net/sinat_30973431/article/details/82556821

    源码,是痛苦的,又是快乐的,如果没有这痛苦,也就没有了这快乐!
  • 相关阅读:
    Spring Boot 属性配置和使用
    spring boot下WebSocket消息推送
    深入理解分布式事务,高并发下分布式事务的解决方案
    HashMap实现原理分析
    JVM 简述
    Java 并发之原子性与可见性
    Java 并发理论简述
    Java读取Properties文件的六种方法
    Java中的注解是如何工作的?
    XML解析——Java中XML的四种解析方式
  • 原文地址:https://www.cnblogs.com/erlongxizhu-03/p/12114652.html
Copyright © 2011-2022 走看看