Java环境变量配置中有关JAVA_HOME,path,Classpath含义的讲解

2024-06-23 19:38

本文主要是介绍Java环境变量配置中有关JAVA_HOME,path,Classpath含义的讲解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一:Path变量
Path变量是操作系统的,用以找寻相关命令的。例如ping这个命令,你能在控制行里打ping 127.0.0.1而有程序执行并正确返回结果,是因为Path变量包
含C:\Windows\System32。你可以在Path中把C:\Windows\System32去掉,再使用ping命令,就会提示找不到ping命令。
这就像你在你的办公桌上工作,需要用到各种工具,如钢笔,如果你不写张纸贴在你桌边儿,就不知道它在哪,需要走到这走到那儿去找,直到找到。
Path就相当于一个记录了工具位置的小便笺,它写着铅笔在同事小王的笔筒里,你就会直接去那儿拿, 而不是来回cd到所有目录里找。 对,你可以试试,只
要ping.exe在C:\Windows\System32里,你随时都可以用C:\Windows\System32\ping来使用这个命令,而配置了Path,你就可以直接打入ping来使用。
然而,想要检查Path配置有效与否,需要一个命令 where, Linux里是which。 比如检查java配置好与否, where java, 它就会返回java命令的路径。
这个命令还可以检查你配置的java是不是你要的那个java, 例如你安装了1.6 和1.7两个版本的jdk, 可是想要用1.7时,打java -version它总是返回当前版本
是1.6怎么办? 那就用where检查一下第一个输出的路径位置的java是不是1.7的,不是的话,在path中把你的1.7位置的路径调地放置前一些。
二:JAVA_HOME
OK, 你可能看到Path里配置的是%SystemRoot%\System32而并非C:\Windows\System32。这就是因为变量SystemRoot的值是C:\Windows。这也就是又独立
出一个JAVA_HOME的原因了。需要配置JAVA_HOME有两个好处,1), 你不用改变Path的值,只需要改变JAVA_HOME的值,就可改变要用的java.exe,javac.exe的
命令位置;2)统一所有使用Java程序的路径 ,所以不推荐有些兄弟说的不必配置JAVA_HOME,各种java程序已经默认JAVA_HOME为找寻java的变量,为避免日
后安装的tomcat等程序找寻java方便,还是配置一下的好。之所以不必配置是因为新的JDK在安装时会向注册表里填入JAVA_HOME的位置。

三: Classpath

顾名思义,就是java class的位置,就是运行相关class, 这些class需要告诉java在哪可以找到它,从而使用。你要在java代码中
import java.lang.String, String的位置就需要给出,简单说,class是系统库位置以及自定义class位置集合。再深刻点儿说,java中的系统ClassLoader
需要用它来将用到的class 加载(load)以供程序使用。

最后,如果你用eclipse等IDE的话,对于你自己在eclipse里写的程序,是任何变量都不需要配置的,因为IDE也可以看作是一个小型的系统,它也有自
己的环境变量。当然对于eclipse这个程序,还是需要在系统中配置的。


这篇关于Java环境变量配置中有关JAVA_HOME,path,Classpath含义的讲解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1088093

相关文章

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

hadoop开启回收站配置

开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。