计算机环境变量的配置,以java为例以及eclipse简要设置
安装JDK时可以不安装公共jre。因为好多软件和浏览器已经默认自带的jre了,或者自动调用系统的了。
在java 中需要设置三个环境变量(1.5之后不需要再设置CLASSPATH了,但需要的话可以设置以保证向下兼用问题),
新建环境变量不区分大小写,但一般用大写)。
配置JAVA_HOME变量:
为什么要配置classpath环境变量?一是为了方便引用,比如,JDK安装在C:\Program Files\Java\jdk1.5.0_17目录里,
则设置JAVA_HOME为该目录路径, 那么以后要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串;
二则是归一原则, 当JDK路径改变的时候, 仅需更改JAVA_HOME的变量值即可, 否则,就要更改任何用绝对路径引用JDK目录的文档,
要是万一没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃! 三则是第三方软件会引用约定好的JAVA_HOME变量,
不然, 你不能正常使用该软件。 比如,Tomcat默认就是找JAVA_HOME这个变量,大小写和下划线都一致,所以变量名要固定的写成JAVA_HOME。
环境变量配置:
Windows环境下安装包(.exe)版和压缩包(.zip,.rar)版环境变量配置一致。
新建系统变量和新建用户变量均可,但是一旦新建系统(用户变量)后,后续的新建或修改的path和CLASSPATH等,
均需要在同样的系统变量(用户变量)下建立。但是推荐新建系统变量,因为新建系统变量后,那么机器上的所有用户均可使用;
而新建用户变量后,只有当前用户能使用,其他用户用不了。
Path变量添加路径:
Path路境内添加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin,即可。
CLASSPATH现在可以不配置了,因为新版本(java1.5之后版本)的都已经在安装时自动配置过了。
配置classpath变量:
为什么要配置classpath变量?
配置classpath变量,才能使得java解释器知道到哪里去找标准类库,这些标准类库是别人已经写好了的,我们只管使用
。比如我们常用到java.lang包中的类,在配置classpath变量后被设为默认导入,所以在写程序时就不用import这个包了。
那么这些标准类库在哪呢?在以JDK的lib目录下以jar为后缀的文件中:一个是dt.jar,一个是tools.jar,
这两个jar包都位于C:/jdk1.6.0/lib目录下,所以通常我们都会把这两个jar包加到我们的classpath环境变量.
在系统环境变量那一栏中点击新建CLASSPATH,具体过程省略,下面只列出其键值对:
变量名: CLASSPATH
变量值: .; .;%Java_Home%\bin;;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
(注意,CLASSPATH最前面是有个 “.”的,表示当前目录。用两个%包围JAVA_HOME这个变量的意思是引用变量的值,
当然如果你不想这样做,也可以这样配置classpath的值为:.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;
也就是用JAVA_HOME变量的值替换%JAVA_HOME%,不过用这样的不利于后面其他软件的引用,比如说有些基于java 才能
运行的软件,默认引用的就是%JAVA_HOME%变量(代表的路径))。
说明:
在JDK1.5以后,classpath并不是必须配置了,在JDK1.5之前,是没有办法在当前目录下加载类的(找不到 JDK目录下lib文件夹中的.jar文件),
所以我们需要通过配置classpath,但JDK1.5之后,JRE能自动搜索目录下类文件,并且加载dt.jar和tool.jar的类。
官方文档解释:
类路径告诉JDK工具和应用程序在哪里可以找到第三方和用户定义的类,这些类既不是Java平台的扩展,也不是Java平台的一部分。参见扩展机制。
如果您从JDK的早期版本升级,那么您的启动设置可能包括不再需要的类路径设置。您应该删除任何与应用程序无关的设置,比如classes.zip。一些使用Java虚拟机(JVM)的第三方应用程序可以修改类路径环境变量,以包含它们使用的库。这样的设置可以保留。
在调用JVM或其他JDK工具时,可以使用一些Java命令的-classpath或-cp选项,或者使用CLASSPATH环境变量,来更改类路径。参见JDK命令类路径选项。使用-classpath选项优于设置CLASSPATH环境变量,因为您可以为每个应用程序单独设置它,而不影响其他应用程序,也不需要其他应用程序修改它的值。参见CLASSPATH环境变量。
通过官方的文档说明我们可以看到,rt.jar和tool.jar这两种属于java平台自身的包就不需要添加到classpath中,只有一些第三方类或者自定义类需要,也并不推荐使用配置CLASSPATH的方法,更推荐使用-classpath选项。如下:
Java_Home代表了我们jdk的路径
- dt.jar是关于运行环境的类库,主要是用于swing的包,如果不使用可以不配置。
- tools.jar是工具类库,它在编译和运行一个类时被使用
当我们配置classpath后,系统会根据我们所配置的classpath加载类
例如:在我们使用javac命令编译程序时,系统加载tools.jar其实就封装了下面这样一条命令
javac XXX.java
java -Classpath=%JAVA_HOME%\lib\tools.jar xx.xxx.Main XXX.java
当然tools的功能可不止这一点,但是确实它为我们提供了很多便利。
所以,一般情况下,在JDK1.5之后的版本,配置Java环境变量的时候我们不再需要配置classpath,只需要配置Java_Home以及path即可!
上面黑色cmd窗口输入java -version后显示版本,已经代表配置环境变量成功。
当然,也可以试一下java,javac等命令。
Eclipse简要设置
应用后即可。
计算机环境变量的配置,以java为例以及eclipse简要设置的更多相关文章
- Java JDK环境变量如何配置?Java基础!
在了解什么是Java.Java 语言的特点以及学习方法之后,本节将介绍如何搭建编写 Java JDK环境变量如何配置,只有搭建了环境才能敲代码! 学Java的都知道,JDK 是一种用于构建在 Java ...
- Java SE 简介 & 环境变量的配置
Java SE 简介 & 环境变量的配置 一.Java 技术的三个方向 Java 技术分为三个方向 javaSE( Java Platform Standard Edition 标准版)用来开 ...
- java环境搭建系列:JDK环境变量详细配置
学习java语言,编写java程序,运行java程序,都离不开Java环境的支持,最重要的就是安装JDK,JDK给我提供了java程序的开发环境和运行环境.为了让java程序放在电脑的任意位置都可以执 ...
- Windows 下java环境变量的配置(Windows7 ,8,8.1,10)
Windows 下java环境变量的配置 在“系统”面板的左上角选择“高级系统设置”,在弹出的系统属性中选择”高级“项,然后点击右下角的“环境变量(N)...”,就此进入JAVA环境变量的配置. 如果 ...
- Java JDK的安装以及环境变量的配置
安装并配置完Android SDK之后,本想着可以做个简单的APP应用了,只是依然提示我“请确认Java JDK是否安装”类似的报错,于是又进行了Java JDK的安装以及环境变量的配置. 1.下载地 ...
- Java环境变量的配置及意义
配置环境:Windows XP 首先是配置参数,这个网站上很多.很多网站上说要配置三个参数,即Path,classpath,JAVA_HOME三个. 简要的介绍一下这三个环境变量. Path使得系 ...
- Java JDK 8 安装和环境变量的配置(Linux and Windows)
Java JDK 8 的安装以及环境变量的配置(Linux and Windows) JDK(Java Development Kit)包含了Java语言的编译器,能够在这里下载: http://ww ...
- Java入门之JDK的安装和环境变量的配置
Java的版本 1. Java SEjava se 以前称为J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用程序.Java SE是基础包,但是也包含了支持 Jav ...
- Java基础学习-Path环境变量的配置
1.为什么要进行Path环境变量的配置 程序的编译和执行需要使用到javac和java命令,所以只能在bin目录下写程序,而实际开发中,我们不可能将程序全部写到bin目录下,所以我们不许让 ...
随机推荐
- lunix或者centos服务器下如何下载自己在github上面的项目代码
1.在github找到项目压缩包下载地址 打开自己的github主页找到需要下载的项目首页,如图所示,找到zip下载地址(ps:如何找这个地址我就不多说了,了解过一点html的同学肯定很容易可以找到) ...
- Pascal的旅行
[问题描述] 一块的nxn游戏板上填充着整数,每个方格上为一个非负整数.目标是沿着从左上角到右下角的任何合法路径行进,方格中的整数决定离开该位置的距离有多大,所有步骤必须向右或向下.请注意,0是一个死 ...
- c++对于c的扩展_冒号作用域
冒号作用域 ::(该运算符为作用域):如果::前面什么都没加代表全局作用域 #include <iostream> using namespace stu; int a=10; viod ...
- linux ping的三个数字(56,84,64)
参考:ping 深入剖析:https://www.cnblogs.com/aozhejin/p/15917312.html windows默认是32字节,linux是56字节说的都是数据包大小注意:1 ...
- Py点亮
- Git上传本地仓库文件到Gitee(Github同理)
前言:本来想把最近的代码更新到Github上,但是校园网打不开,于是决定暂时先更新到Gitee中,Github中的操作也同理. 1. 创建云仓库: 就是在Gitee/Github上创建仓库,这里不演示 ...
- jquery的常用API
1, 增 $('body').append('<h1>大标题</h1>') $('body').append('<h2>二标题</h2>') $('&l ...
- C#二次开发BIMFACE系列61 File Management文件管理服务接口二次开发及实战详解
系列目录 [已更新最新开发文章,点击查看详细] 在我的博客<C#二次开发BIMFACE系列61 File Management文件管理服务接口二次开发及实战详解>最后列出了 Fil ...
- @Transactional的使用与失效
@Transactinonal 注解在方法抛出RuntimeException类及其子类时.Error类及其子类时会回滚当前事务,使sql不提交: 只能作用于public的方法:写在类上时,代表给该类 ...
- “如何实现集中管理、灵活高效的CI/CD”在线研讨会精彩内容分享
"如何实现集中管理.灵活高效的CI/CD"在线研讨会精彩片段分享 片段主讲人:李培(西瓜刀) 大家好,我是李培.前面听文老师讲DevOps,包括CI/CD 的一些理论,也是挺有 ...