win10 Java14安装及配置

Java是面向对象的编程语言,在我们开发Java应用的程序员的专业术语里,Java这个单词其实指的是Java开发工具,也就是JDK(Java Development Kit)。所以我们常常在CSDN等各大程序员论坛讨论到安装Java8或者JDK8或者JDK1.8或J2SE8或J2SE1.8或J2SE8或J2SE1.8,其实这3个专业词汇的概念是一样的。具体的区别可参考这篇文章
原文链接:https://blog.csdn.net/wq6ylg08/article/details/91351339

一. java的安装

1. 去Oracle官网下载JDK14

2. 选择windows平台exe安装版本下载

jdk14.exe

3.下载好后之间点击默认安装,165.962MB

jdk14

如果是Linux平台,可以使用如下命令安装:
sudo apt install openjdk-21-jdk
查看java --version查看版本


二. java的配置

1. 新建环境变量JAVA_HOME

变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk-14.0.1 【变量值是自己的jdk安装目录】

2. 新建环境变量CLASSPATH

变量名:CLASSPATH
变量:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
需要注意变量值前面的“.;”和最后面的";"

3. 添加PATH路径

双击Path,点击新建,添加 %JAVA_HOME%\bin

注意: 因为新版本改进,不需要添加%JAVA_HOME%\jre\bin
注意:path路径在上面的系统优先使用靠上的地址,当cmd窗口中输入java命令,会优先调用橙色的路径下的java.exe程序

path

4. 多版本共存

如果有多个版本共存,如还有Java8,那么可以将新增JAVA_HOME8,可随时切换,

5. 验证

打开cmd窗口,输入java - version,显示为jdk14版本

C:\Users\Administrator>java -version
java version "14.0.1" 2020-04-14
Java(TM) SE Runtime Environment (build 14.0.1+7)
Java HotSpot(TM) 64-Bit Server VM (build 14.0.1+7, mixed mode, sharing)

同样输入java - version,显示为javac 14版本

C:\Users\Administrator>javac -version
javac 14.0.1

三. java使用

1. 我们使用jdk14写一个helloworld程序

文件名为:hello.java
代码内容如下:

public class hello{
    public static void main(String[] args){
        System.out.println("hello world");
    }
}

2. 运行java程序(含编译)

在cmd窗口 cd 到文件当前目录
F:\Documents_kiton>cd java_docu
输入命令java hello.java,会显示hello world

F:\Documents_kiton\java_docu>java hello.java
hello world

3. 编译java程序

按照老版本jdk,是需要先编译再运行的,即先编译生成 *.class 文件,再利用命令 java *.class 运行java二进制文件。
需要注意的是新版本JDK可以之间java命令,且不生成.class文件。
如果需要生成hello.class文件,也可以和老版本一样分为两个步骤

  1. 先输入 javac hello.java 生成 hello.class 文件
  2. 输入 java hello 运行 hello.class二进制文件
    运行情况如下:
F:\Documents_kiton\java_docu>javac hello.java

F:\Documents_kiton\java_docu>java hello
hello world

文件夹中文件如下:


java.class

4. 中文乱码问题

如果代码涉及到中文,需要在编译时,加上javac编码参数
javac -encoding utf-8 hello.java
代码如下:

public class hello{
    public static void main(String[] args){
        System.out.println("hello world");
        System.out.println("你好啊世界");
    }
}

若直接运行,可能导致javac 和java编码方式不一致

F:\Documents_kiton\java_docu>java hello.java
hello world
浣犲ソ鍟婁笘鐣?

若直接不加参数编译,会报错:

F:\Documents_kiton\java_docu>javac hello.java
hello.java:4: 错误: 编码 GBK 的不可映射字符 (0x8C)
        System.out.println("浣犲ソ鍟婁笘鐣?");
                                   ^
1 个错误

先加参数编译再运行不会出问题:

F:\Documents_kiton\java_docu>javac -encoding utf-8 hello.java

F:\Documents_kiton\java_docu>java hello
hello world
你好啊世界

5. 修改默认编码方式

由于现在IDE一般默认是utf-8编码,而Java默认是GBK编码,如果不想每次编译都加参数那么麻烦,那我们就添加一个环境变量来修改默认编码方式。

创建系统环境变量:

变量名: JAVA_TOOL_OPTIONS, 变量值:-Dfile.encoding=UTF-8

默认编码utf-8

直接运行效果如下:

F:\Documents_kiton\java_docu>java hello.java
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
hello world
你好啊世界

先编译再运行效果如下:

F:\Documents_kiton\java_docu>javac hello.java
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8

F:\Documents_kiton\java_docu>java hello
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
hello world
你好啊世界

但是如果文件是GBK编码方式的,那么直接编译也会报错,如下:

F:\Documents_kiton\java_docu>javac hello.java
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
hello.java:4: 閿欒: 缂栫爜 UTF-8 鐨勪笉鍙槧灏勫瓧绗?(0xC4)

        System.out.println("锟斤拷冒锟斤拷锟斤拷锟?);

                            ^
hello.java:4: 閿欒: 缂栫爜 UTF-8 鐨勪笉鍙槧灏勫瓧绗?(0xE3BA)

        System.out.println("锟斤拷冒锟斤拷锟斤拷锟?);

                             ^
hello.java:4: 閿欒: 缂栫爜 UTF-8 鐨勪笉鍙槧灏勫瓧绗?(0xA1)

        System.out.println("锟斤拷冒锟斤拷锟斤拷锟?);

                               ^
hello.java:4: 閿欒: 缂栫爜 UTF-8 鐨勪笉鍙槧灏勫瓧绗?(0xCA)

        System.out.println("锟斤拷冒锟斤拷锟斤拷锟?);

                                ^
hello.java:4: 閿欒: 缂栫爜 UTF-8 鐨勪笉鍙槧灏勫瓧绗?(0xC0)

        System.out.println("锟斤拷冒锟斤拷锟斤拷锟?);

                                 ^
hello.java:4: 閿欒: 缂栫爜 UTF-8 鐨勪笉鍙槧灏勫瓧绗?(0xBD)

        System.out.println("锟斤拷冒锟斤拷锟斤拷锟?);

                                  ^
hello.java:4: 閿欒: 缂栫爜 UTF-8 鐨勪笉鍙槧灏勫瓧绗?(0xE7)

        System.out.println("锟斤拷冒锟斤拷锟斤拷锟?);

                                   ^
7 涓敊璇?

四. JVM,JRE 和 JDK的关系

1. 什么是JVM

java虚拟机,简称JVM,是运行所有java程序的虚拟计算机,是java程序的运行环境,是java最具有吸引力的特性之一。我们编写java代码,都是运行在JVM之上,因此可以做到跨平台运行。

2. jre和jdk是包含关系

  • JRE:是jav程序运行的环境,包含JVM和运行时所需要的的类库。
  • JDK: 是java程序开发的工具包,包含JRE和开发人员使用的工具。
    即JDK包含JRE。
    也就是说我们想要运行一个java程序只需要安装JRE即可(例如很多依赖java的软件,就必须要装java JRE),但是如果想要开发一个java程序那么就必须要安装JDK。
    他们之间的关系如下:


    JDK和JRE的关系

参考文章:

  1. Java配置

  2. jdk多个版本如何共存

  3. JRD、JDK、JVM的区别,如何更改eclipse的运行环境、java的把大数据类型

  4. Java8与JDK1.8与JDK8与J2SE8与J2SE1.8的区别是什么?——Java的各个版本和各个版本的历史版本号的关系与解读

  5. Java基础学习之用System.out.println()输出中文字符串乱码问题

  6. win10下Welcome.java:3: 错误: 编码GBK的不可映射字符 System.out.println("Hello Java!

  7. 将JDK默认编码设置为UTF-8

  8. 解决java中文乱码,编码识别测试,汇总

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,544评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,430评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,764评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,193评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,216评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,182评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,063评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,917评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,329评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,543评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,722评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,425评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,019评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,671评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,825评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,729评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,614评论 2 353