java环境变量设置优化_Java环境变量配置

一.Java的安装

1.下载合适的版本,安装jdk和jre到同一路径下的同一文件夹下,例如:都安装在 E:\Java;

5db6f62fdd65baad9d8d63c4f40465b9.png

备注:JDK:Java Development Kit ;JRE: Java Runtime Environment

如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK,JDK中包含有JRE。

jdk本身就等于jre+开发工具,直接可以用jdk代用jre

以前的jdk安装一套外置jre,是为了让jdk版本稳定而保持外置jre可以独立更新

11版以后,需要另外单独下载jre。然而现在jre11并没有发布,下载不到。java对最终用户的jre都推荐默认安装jre8,连jre9 jre10都没有推荐。

新安装的jdk11,竟然发现jdk里没有自动安装jre,

764cebc4692816301817af36defbaa69.png

运行程序有时候果然不能运行,网上找了一大堆,捣鼓了好长时间,终于找到了一种可行的方案。

解决如下:

以管理员的身份打开命令提示符cd到%JAVA_HOME%(用户安装路径)

然后运行命令bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre

然后将自动生成了jre。

55148edf03cc6b5f62627cae1b45cc10.png

二.环境变量的配置

1. 三种进入环境变量编辑的方式

1) 计算机→属性→高级系统设置→高级→环境变量;

295d1bfe69841d43a90f5904b6e8da82.png

2)在控制面板右上角搜索env,然后点击 编辑账户的环境变量

1d235b97c597809b44a925936f4afb23.png

3)点击桌面右下角的开始 → 用户账户 →更改我的环境变量

8de37184518213629d82f356101eee7f.png

4ad4d153fcd96349b85f5e4982a9f80a.png

2. 环境变量的配置(JAVA_HOME,Path,CLASSPATH)

理论上java安装后一个变量都不需要配置,只不过为了命令行敲起来方便和方便以后开发的java小工具,一般都会设置java_home,然后把$Java_home/bin追加到path中。

不要被旧书误导咯,官方说jdk1.5以后就不用配置也不建议配置classpath了。不过有时候为了兼容低版本和其他系统如在linux 中运行ant,就必须配置dt.jar和toolr.jar,要不无法运行。

所以一般是不需要再配classpath了(为了兼容还是配置上吧,有时候出现创建虚拟机失败等各种莫名其妙的问题,待研究到底是什么问题导致的)。

1)JAVA_HOME :变量值为个人 jdk的安装目录;(例如:E:\java\jdk1.8.0_31)

2)Path:找到系统变量里的path,如果没有就新建,在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

备注:如果原来的path有值则在值最后需要有分号,然后再添加值;

3)CLASSPATH:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar

备注:注意最前面有点 classpath的作用是告诉Java 编辑器在哪里寻找Java编译过程中需要的包和类(.class文件),所以其路径中配置的是lib和lib 下的tools.jar

从jdk-9之后就已经没有tools.jar和dt.jar了,也不需要在classpath里面配置这些jar了,配置可参考:

JAVA_HOME=jdk安装路径

JRE_HOME=jre安装路径

PATH= ;%JAVA_HOME%\bin;%JRE_HOME%\bin

CLASSPATH=.;%JAVA_HOME%\lib;%JRE_HOME%\lib

更新后,版本带来的变化,模块化后导致不需要或者说将toos.jar和dt.jar文件兼容到其他部分,jdk的lib下面不会再出现这俩文件;

(摘:版本更新到9.0后的变化)JDK 9的核心变化就是引入了一种新的Java编程组件,也就是模块,按照Oracle的说法,它是一个可命名的、自描述的代码和数据集合。模块技术的核心目标是减少Java应用和Java核心运行时环境的大小与复杂性。为此,JDK本身进行了模块化,Oracle希望通过这种方式提升性能、安全性和可维护性。

为了支持Java 9的模块,引入一种新的模块化JAR文件形式,按照这种形式会在其根目录中包含一个module-info.class文件。Oracle同时提供了工具,允许我们组合和优化一组模块,形成自定义的运行时镜像(image),这样的镜像不必将整个Java运行时包含进来。模块化所带来的其他变化包括从Java运行时镜像中移除了rt.jar和tools.jar。

3.Java环境变量设置在用户变量和系统变量的区别

系统变量设定后,会对这台机器的所有用户生效 ;

用户变量设定只对当前用户有效;

一般没有特殊要求的情况下设置的都是系统变量。

b15cff3e4da9d435582518fddb286ed8.png

用户变量的优先级高于系统变量的,即如果同时配置了某个变量最终使用的是用户变量里的配置,

对于Path这个环境变量,你在命令行(cmd)下输入:echo %Path%

用户环境变量会接在系统环境变量后面。这里强调下,正常对于环境变量,系统会检查用户环境变量,之后再检查系统环境变量,如果有相同的变量名,并不会将两者的内容合并在一起。

三. 检测是否安装成功:

1 在 cmd 窗口中输入:java -version 可以查看java的版本信息 ;

3c2cb7fea2391b2ed7df97aa4a3055c4.png 

2  编写一简单的类测试:

例如在 E:\aa 下放了一个简单的 Bird.java 的测试类:

public classBird{public static voidmain (String[] args){

System.out.print(1111);

}

}

1)cd\ 回到根目录;

2)E:进入到e盘目录;

3)cd aa 进入到aa文件夹下;

4)javac Bird.java 编译java文件;

5)JavaBird 运行java class文件。

064c96acbf930c7564fe3bad537e31b3.png

扩展:java11支持源文件直接运行(666!)

public classTest{public static voidmain (String[] args){

System.out.println("Hello World!");

}

}

14dc0f6af25da96cc60f69e97f692fd0.png

8d6d0d95b1de80ab3c38eccdba66546c.png

注意没有生成  .class 文件

详见:

2018年8月25日 08:34:44

2019年6月21日 09:24:45

2020年4月17日 14:35:07

2020年9月1日 01:11:02

2020年12月18日 13:02:08

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值