win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法

  1. 在开始菜单中寻找命令提示符
  2. 右击命令提示符----->更多-------->以管理员身份运行
    win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第1张图片
  3. 输入:cd C:\Program Files\Java\jdk-11.0.7【你自己的java安装路径】
    win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第2张图片
  4. 然后输入命令:
    bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre
    win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第3张图片
  5. 回车执行命令,就会出现jre这个文件夹了
    win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第4张图片

两个java版本的jdk环境变量的配置

  1. 右击桌面“我的电脑”图标——>单击“高级系统设置”——>单击“环境变量”
    win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第5张图片
    win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第6张图片
  2. 在系统变量中新建变量: JAVA_HOME 变量值: %JAVA_HOME11%
    新建变量: JAVA_HOME8 变量值 C:\Program Files\Java\jdk1.8.0_221(jdk安装路径)
    新建变量: JAVA_HOME11 变量值:C:\Program Files\Java\jdk-11.0.7 (jdk安装路径)
    需要用jdk8时, JAVA_HOME 变量值为: %JAVA_HOME8%
    需要用jdk11时, JAVA_HOME 变量值为: %JAVA_HOME11%
    win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第7张图片
JAVA_HOME              %JAVA_HOME11%
JAVA_HOME8             C:\Program Files\Java\jdk1.8.0_221
JAVA_HOME11            C:\Program Files\Java\jdk-11.0.7 

只有一个java版本时只需设置以下变量

JAVA_HOME            C:\Program Files\Java\jdk-11.0.7 
  1. 新建变量CLASSPATH 变量值: .
CLASSPATH                   .

win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第8张图片
4. 配置path变量
win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第9张图片

%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin

把这两个变量“上移”到最上面
5. 检测
“ windows+R ”——>输入:cmd 进入命令提示符
输入检测命令

java -version
javac -version

win10操作系统jdk11不带jre的解决办法 单/多版本jdk环境变量的配置 javac不可用的解决方法_第10张图片

怎么解决javac不可用的问题?

windows操作系统是如何搜索硬盘上某个命令的呢?
  • 首先会从当前目录下搜索
  • 当前目录搜索不到的话,会从环境变量path指定的路径当中搜索某个命令
  • 如果都搜索不到,则报错。
——配置环境变量Path、classpath
  • 注意:Path环境变量和java语言没有关系,path环境变量是属于Windows操作系统的一个知识点。Path环境变量是专门给Windows操作系统指路的。

  • javac想要随意使用,需要将javac所在的目录配置到环境变量Path中:

    Path=XXXX;C:\Program Files\Java\jdk1.8.0_221\bin

  • ClassPath=. classpath是为类加载器指路的,默认是当前目录寻找,指路后只能从指定的文件夹中寻找class文件

    "."代表当前目录 “…“代表上级目录

你可能感兴趣的:(JAVA基础)