详解关于Windows10 Java环境变量配置问题的解决办法
作者:勤奋的小小程序员 发布时间:2023-02-06 10:53:29
关于Windows10 Java环境变量配置问题的解决办法
由于最近有一些时间,所以想要把之前学过一段时间的Java重新捡起来看看,之前的学习环境是Ubuntu,对于环境变量的配置和Windows也没有什么本质的区别,只不过是要用自带的编辑器更改一些东西而已。
那么我先讲讲我对于环境变量的一些自己的理解,由于每次编译源程序的时候需要用到编译工具,而Java的编译工具就是从oracle官网上下载的jdk包中的一些jar文件,所以如果要让系统识别java或者javac命令,那么就必须让系统知道这些文件的具体位置。
这样就涉及到在配置Java的环境变量时新手看得云里雾里的那些地址,但是如果弄清楚了这些代码代表的意思,那么其实这些很简单。下面我一点点来剖析一下,其实没什么,但是我之前也是觉得很迷糊,所以想写出来分享一下。
更改的方式是在:控制面板-系统和安全-系统
然后点击左侧的高级系统设置-环境变量-系统环境变量
因为这里是想要在全局都能使用Java命令,所以更改的是系统环境变量
首先是JAVA_HOME,这个系统环境变量的意思非常直白,就是把你jdk的地址给出,比如我电脑上这个环境变量如下:
C:\Program Files\Java\jdk1.8.0_91
现在Windows很方便,直接新建系统环境变量,输入名称和路径就好
如果大家有些编程的基础或者在Linux下配置过环境变量就会发现,环境变量的配置实际上与编程是类似的,比如这里就是把jdk的地址赋予了JAVA_HOME这个环境变量
接下来就要用到这个环境变量了,对于PATH的设置如下:
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
其中百分号的意思也就是取该变量的值即jdk的地址
最后一项是CLASSPATH,oracle官网上说1.5版本之后的jdk不需要添加CLASSPATH,但是经过试验发现了一些问题,也就是说现在版本的jdk在Windows10上面的安装,添加环境变量的时候,需要重启,这是官方解释,而且最好是添加上CLASSPATH,还有一点,就是不要用JAVA_HOME代替实际地址,把绝对路径写出,不要用相对路径,所以CLASSPATH的设置如下:
.;C:\ProgramFiles\Java\jdk1.8.0_91\lib\dt.jar;C:\Program Files\Java\jdk1.8.0_91\lib\tools.jar;
这些操作进行完毕之后,需要做的就是打开cmd命令窗口,输入:
java -version
java
javac
如果第一个命令显示出了jdk的版本,那么基本上你的Java编译环境已经搭建成功,下面就可以开始写第一个Java程序了,把文件命名为Hello.java,注意文件名一定要和程序中的类名相同,不然编译器将无法识别
class Hello{
public static void main(String[] args) {
System.out.println("hello world!");
for(int i=0;i<args.length;i++){
System.out.println(args);
}
}
}
在cmd窗口找到你存储程序文件的目录,使用如下命令进行编译执行:
javac Hello.java
确定没有错误之后,再执行:
java Hello
这时会有两个hello world!输出
总结一下,也就是说现在Windows10需要在更改环境变量的操作和注意事项:
更改时需要把相对路径去掉,直接使用绝对路径
更改操作进行完毕之后需要重启电脑
以上所述是小编给大家介绍的关于Windows10 Java环境变量配置问题的解决办法详解整合网站的支持!
来源:https://blog.csdn.net/SilEncE_Orange/article/details/69230278
猜你喜欢
- 1. 栈1.1 概念栈:是一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。特点:栈中的数据元素遵循先进后出的原则,但要注意进的
- 在spring 3.2 及以后版本中增加了对请求的异步处理,旨在提高请求的处理速度降低服务性能消耗。在我们的请求中做了耗时处理,当并发请求的
- 1.WinMergeWinMerge是一款运行于Windows系统下的文件比较和合并工具https://winmerge.org/downl
- 前言前面介绍了APP顶部导航栏AppBar,今天来介绍下Flutter实现APP底部导航栏。我们以仿写微信的底部导航栏来举例说明。要实现类似
- 概念尽量使用合成/聚合,而不是使用继承实现复用。所谓的合成/聚合是指一个对象里持有另外一个类的对象,通过调用这些对象的方法得到复用已有功能的
- 因重定向无法正常goBack()解决方案首先说下问题,初始页面为A,点击某个链接跳转到B(http://xxx.com.cn/),B页面重定
- 最近学习Spring,一直不太明白Srping的切面编程中的的argNames的含义,经过学习研究后,终于明白,分享一下需要监控的类:pac
- 一.优先队列的应用优先队列在程序开发中屡见不鲜,比如操作系统在进行进程调度时一种可行的算法是使用优先队列,当一个新的进程被fork()出来后
- 一:SparkSQL1.SparkSQL简介Spark SQL是Spark的一个模块,用于处理结构化的数据,它提供了一个数据抽象DataFr
- 本文实例为大家分享了Java实现简单日历界面的具体代码,供大家参考,具体内容如下请使用JFrame、JPanel、JButton、JLabe
- Java中的static关键字可以用于修饰变量、方法、代码块和类,还可以与import关键字联合使用,使用的方式不同赋予了static关键字
- 自定义 webflux 容器配置配置代码@Componentpublic class ContainerConfig extends Rea
- 本文实例讲述了Java继承Thread类创建线程类。分享给大家供大家参考,具体如下:一 点睛通过继承Thread类创建线程并启动多线程的步骤
- SpringBoot使用过滤器、 * 和 * 一、SpringBoot使用过滤器Spring boot过滤器的使用(两种方式)使用sprin
- Java的在还没有发现新写法之前时,我一直是这么初始化List跟Map://初始化List List&l
- 本文实例讲述了C#生成随机数功能。分享给大家供大家参考,具体如下:using System;using System.Collections
- 本文实例为大家分享了Winform实现导入导出Excel文件的具体代码,供大家参考,具体内容如下/// <summary> &n
- 一、模拟业务需求假设我们现在需要在我们的系统中导入一批关于学生信息的Excel的数据,其主要的信息有:学号、姓名、年龄、性别等等,在导入系统
- 最近在做一个项目,遇到了项目打成 war 包的一个问题,项目创建时选择的时 jar 包方式,后因项目部署要求,需要打成 war 包部署,遇到
- Redis是一个缓存消息中间件及具有丰富特性的键值存储系统。Spring Boot为Jedis客户端库和由Spring Data Redis