JAVA-配置path环境

配置path环境变量变的目的是什么?

控制台可以在任意的路径下都可以找到java的开发工具。

为了说明几个JDK环境变量的作用,这里先给出环境变量的定义
环境变量:
环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,比如临时文件夹位置和系统文件夹位置等。这点有点类似于DOS时期的默认路径,你运行某些程序时除了在当前文件夹中寻找外,还会到设置的默认路径中去查找。简单地说这里的“Path”就是一个变量,里面存储了一些常用命令所存放的目录路径。

目前path环境变量除了保存了我们自己配置的信息以外,还有系统自带的信息,如果一旦不不小心删除了path环境变量信息,那么就可能导致系统部分功能无法使用。
尽量避免修改的path环境变量信息。

如何尽量避免频繁修改path环境变量?

解决办法:新建一个环境变量保存jdk安装目录会发生变化的部分,然后在path环境变量上引用新环境变量所保存的信息。

由于可能因为更新JDK版本,可能出现安装路径变动的情况,为了避免频繁改动path环境变量,我们可以在外部新建一个Java的变量来给path引用,当JDK安装路径出现变化时,不用去修改path里面的环境变量。

1.首先需要新建一个JAVA_HOME变量,值为JDK的安装路径。JAVA_HOME指向JDK的安装目录;Eclipse/Tomcat等JAVA开发的软件就是通过搜索JAVA_HOME变量来找到并使用安装好的JDK,如果你没有配置JAVA_HOME变量,你会发现Tomcat无法正常启动。如下图:

2.编辑path,在path中添加一条环境变量,值为:%JAVA_HOME%\bin。bin目录存放的是java的开发工具,双%中间加JAVA_HOME的意思是path引用JDK的安装路径,这样不论JDK的安装路径如何改变,只需要更改JAVA_HOME的值,path的环境变量始终指向JDK的安装路径,不用频繁修改path环境变量,避免对path环境变量造成意外修改。PATH指向搜索命令路径,如果没有配置这个PATH变量指向JDK的命令路径,会发现在命令行下无法运行javac、java等命令。如下图:

 

3.配置CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
CLASSPAH指向类搜索路径,.;表示在当前目录搜索,由于java程序经常要用到lib目录下的dt.jar和tools.jar下类,所以这两项也要加进来,如果在命令行编译和运行的程序还需要用到第三方的jar文件,则也需要把第三方JAR文件加入进来。

 

4.用户变量是针对某个用户设置的相关环境参数,系统变量是针对所有用户设置的环境参数;那么如果在用户变量和系统变量中都有某个参数的配置,哪个优先?
系统变量优先.
---首先把系统变量中关于java的环境参数全部移除.
---javac不是内部或外部命令,出现这种情况是因为你没有在path变量中配置javac命令所在的路径?那么操作系统找不到,所以报这个错误.
Path变量已经存在,我们只需要在该变量值的前面加入javac命令所在的目录即可D:\Java\jdk1.7.0\bin,注意和后面的路径之间要有一个分号.
---从jdk1.4开始,已经不需要配置CLASSPATH这个环境变量了.以前我们配置这个变量,它的值是(.;D:\Java\jdk1.7.0\lib),表示(java HelloWorld)运行时需要这些底层的类和接口,那么系统可以马上找到.现在不需要,因为jdk可以自动找到.
----CLASSPATH的值之所以加一个.,表示搜索当前目录,这样不用担心找不到HelloWorld.class,然后后面紧跟着lib目录,因为要调用这些底层类和接口,所以配置了两个路径.
----配置JAVA_HOME可以很方便的实现jdk安装目录的变更.

 

需求: 在现实开发中有时候jdk版本的信息有时候只会使用一次或者几次就不再使用了,比如开发了一个软件,需要在java5,java6,java7中测试,那么如果是这种需求,我们一般都是通过set命令配置临时环境变量。

临时环境变量就是仅对于当前控制台窗口起作用,窗口一旦关闭,那么配置的临时环境变量信息会发生消失。

set命令的用法:

set                          查看所有的环境变量信息。
set 环境变量的名字                  查看指定的环境变量信息。
set 环境变量名字 =                  路径信息 设置指定的环境变量信息。(仅对当前控制台有效,再开一个,原本信息不变)
set 环境变量名字 =                  清空指定的环境变量信息。
set 环境变量名字 = 新路径;%环境变量名字%     在原有的基础上添加新的路径信息。

 

想要在原有环境变量值基础上添加新值呢?

首先,通过%变量名%操作符获取到原有环境变量的值。

然后加上新值后在定义给该变量名即可

举例:给path环境变量加入新值

set  path=新值;%path%

set path=f:\a\;%path%;

注意:这种配置方式只在当前dos窗口有效。窗口关闭,配置消失。

注意: 以后大家但凡看到是set命令设置的环境变量信息,都是临时环境变量信息。

 

转载于:https://www.cnblogs.com/RzCong/p/6815193.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488417.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

170页PPT入门深度强化学习! 汪荣贵 图灵人工智能 昨天

转自:中国图象图形学报什么是强化学习?和其他学习方法相比,有何不同与特色?深度学习如何与强化学习结合?并各取所长?深度强化学习会成为未来引领智能计算的方法吗?深度强化学习将强化学习和深度…

钟南山院士应邀向欧洲同仁全方位解析新冠肺炎(配中文文字版)

来源:ERS欧洲呼吸学会尊敬的同事们,女士们,先生们:非常荣幸能有机会与您分享我们处理中国境内COVID19感染的相关经验。在这种情况下,我仍然在前线工作,所以准备这个PPT比较匆忙。我只能告诉您一些事实、某些…

powerbi的功能介绍_Power BI性能提升的5大秘密武器

​Power BI无疑已经走了很长一段路,它以其作为自助服务工具的强大根基,易于使用的功能以及在企业领域的持续推动和推动而发展。但是,我们仍然可以发现许多开发和维护Power BI解决方案可以通过应用一些更改而受益匪浅,这些更改将导…

递归推导——猜年龄

一、问题描述 班里转来了一位新同学,他在介绍自己年龄的时候说:“我的年龄的平方是一个三位数,立方是一个四位数,四次方是一个六位数。三次方和四次方正好将0/1/2/3/4/5/6/7/8/9这10个数字全部覆盖。”,那么&#xff0…

matlab画布透明,MATLAB怎么生成带透明对象的矢量图

从很早的版本开始MATLAB就支持对patch、surface等对象设定透明属性,有些示意图也必须使用透明的对象才能充分展示所要表达的含义。对透明对象支持最好的通用图片格式就是.png了,但是png图像并非矢量图形,对于一些需要以矢量图显示的场合并不适…

综述:持续感知系统在边缘计算的应用

来源:《微纳电子与智能制造》随着边缘计算技术的兴起,各种各样的感知系统给人类带来了便捷高效的生活。以日常使用的手机为例,工程师为其置入了各种各样的传感器,并通过运行其上的机器学习算法,部署了很多便捷的功能。…

matlab fgoalattain,matlab优化工具箱 | 学步园

1工具箱概述1.1 功能(1)求解无约束条件非线性极小值;(2)求解约束条件下非线性极小值,包括目标逼近问题、极大-极小值问题和半无限极小值问题;(3)求解二次规划和线性规划问题;(4)非线性最小二乘逼近和曲线拟合;(5)非线性…

自保护、人机互动柔性织物传感器研究取得进展

来源:中国科学院宁波材料技术与工程研究所可穿戴柔性电子器件,因其柔性/拉伸性、质轻、成本低、便携等特性,被广泛应用于人体运动/人体健康的实时监测、人机/脑机交互以及机器学习等领域。但目前仍存在灵敏度及响应速度较低、检测下限较高、检…

Hibernate第十一篇【配置C3P0数据库连接池、线程Session】

Hibernate连接池 Hibernate自带了连接池,但是呢,该连接池比较简单..而Hibernate又对C3P0这个连接池支持…因此我们来更换Hibernate连接池为C3P0 查看Hibernate自带的连接池 我们可以通过Hibernate.properties文件中查看Hibernate默认配置的连接池 hibern…

npm 切换源_【分享吧】verdaccio搭建npm私有仓库

verdaccio搭建npm私有仓库前言随着前端技术的不断发展,前后端分离已成为主流趋势,这就导致了前端承受的分工压力会越来越大,前端项目也将变得十分庞杂,因此在技术方面会考虑按照业务线进行拆分成几个业务系统。这些系统之间如何共…

疫情中的人工智能和大数据“社会实验”,将如何影响我国经济社会发展

来源:三思派最近,上海市科学学研究所编制了《人工智能、大数据支撑新冠肺炎疫情防控报告(1.0版)》。报告预测,疫情过后,人们的生活和工作方式都可能向更加智能化方向发展,一个以智能化、无人化、…

IBM强化Watson对商业语言的理解能力—AI辩论一些关键技术首次商业化

来源:IBM中国2020 年 3 月 11 日,商业人工智能领域领军者 IBM[1]宣布推出几项全新的 IBM Watson 技术,旨在帮助组织机构更清晰地识别、理解和分析英语语言中某些最具挑战性的方面,从而获取更多洞察。全新的 IBM Watson 技术代表着…

删除快捷方式小箭头_修复快捷方式的箭头图标

前一天晚上,用360清理缓存文件后,早上起来一看快捷方式的箭头图标不见了,左下角变成了一片白色。试了很多方法,比如说删除iconcache.db,然后重启资源管理器等等,发现没有用。然后,装上360桌面助…

如何实现对外部php文件的调用,laravel如何引用外部文件

laravel如何引用外部文件,主视图,视图,文件,方式,内容laravel如何引用外部文件易采站长站,站长之家为您整理了laravel如何引用外部文件的相关内容。(1)、首先在app\Http\routes.php中定义路由;Route::get(view,ViewControllerview);Route::get(article,V…

清华大学人工智能深度报告:八大维度解析机器学习

来源:世界人工智能大会机器学习(Machine Learning,常简称为 ML)已经成为了当今的热门话题,从机器学习概念诞生到机器学习技术的普遍应用经过了漫长的过程,众多优秀的学者为推动机器学习的发展做出了巨大的贡…

【周末阅读】5G时代新型基础设施建设白皮书

来源:智东西【导读】当今世界,新一代信息技术与经济社会深度交融,正引领全球新一轮科技革命和产业变革,其速度、广度、深度前所未有。加快 5G 商用和人工智能、工业互联网、物联网等新型基础设施建设是发挥投资关键作用&#xff0…

pandas取出某一列_Pandas高级运算 | apply与applymap方法详解

大家好,今天我们来聊聊pandas的一些高级运算。在之前文章中,我们介绍了panads的一些计算方法,比如两个dataframe的四则运算,以及dataframe填充Null的方法。今天这篇文章我们来聊聊dataframe中的广播机制,以及apply函数…

深度|​揭秘5G+AI时代的机器人世界!七大核心技术改变人类生活!

来源:电子工程世界AI 和 5G 与机器人技术结合,正在不断催生新的消费电子品类。AI 解决机器理解世界,以及人机交互的问题。5G 拓展机器人的活动边界,并为机器人提供更大的算力和存储空间(云协作机器人) 。根…

点击按钮,缩放图片(img.width、img.style.width、img.offsetWidth)

前几天在慕课网上看到一个关于图片缩放的教学视频,因为当时对老师使用img.width,而不是使用img.style.width而感到奇怪,所以周末得空了,想来自己试着写出来,相关视频网址如下:http://www.imooc.com/video/1111&#xf…

sql怎么继续编辑已经保存的代码_某团购CMS的GETSHELL操作代码审计

作者:会上树的猪合天智汇 0x00 写点废话在渗透测试中,获取一个webshell应该是我们不屑的追求,今天要通过这个CMS从代码的角度看一下可利用的getshell的方法。这一次的代码审计需要借助工具来定位可能存在的漏洞点,选择Seay源代码审…