Java 的下载安装教程[通俗易懂]

Java 的下载安装教程[通俗易懂]Java17的下载安装教程说明:本文介绍的是Windows下安装Java的方法。对于Linux下Java的安装,可见笔者的另一篇博客:在Linux操作系统中安装Java:https://blog.csdn.net/wangpaiblog/article/details/120093325笔者的安装环境:JDK17Windows10教育版安装Java就是安装JDK。Java有三大分支,这里选择的是JavaSE。关于

大家好,又见面了,我是你们的朋友全栈君。

Java 17 的下载安装教程

说明:

笔者的安装环境:

  • JDK 17

  • Windows 10 教育版


  1. 安装 Java 就是安装 JDK。Java 有三大分支,这里选择的是 Java SE。关于这些分支的区别,可见笔者的另一篇博客:

    Java SE、OpenJDK、Java EE、Java 框架、Java ME 等概念之间的区别:
    https://blog.csdn.net/wangpaiblog/article/details/112342415

    此外,对于 JDK,也更替了很多个版本,其中也分为 LTS 版本和非 LTS 版本。LTS 指长期支持版(Long Term Support)。对于这个概念,这里不多作解释,读者可以简单将它们理解为稳定版与快照版。

    (Java 的 LTS 版本目前有:Java 8、Java 11、Java 17。网址:https://www.oracle.com/java/technologies/java-se-support-roadmap.html

    笔者的意见是,最好下载最新的 LTS 版本。但对于一些刚刚学习 Java 的读者来说,下载哪个版本区别不大,因为它们之间的区别不会在简单的 Java 程序中体现。编写本教程的时候,笔者下载的是当时的最新 LTS 版 Java SE 17

  2. 进入 Oracle 官网下载 Java SE,也就是 JDK 的安装包。

    Java 的官网下载链接:https://www.oracle.com/java/technologies/downloads/

    Java 17 下载处的最终网址:https://www.oracle.com/java/technologies/downloads/#jdk17-windows

    (在 Java 17 以前,下载还需要注册一个 Oracle 账号。但在 Java 17 之后,Oracle 决定推出商业免费版。也许是担忧 Java 的市场份额每况愈下,垄断看来不够格。对于 Java 17,下载不需要注册账号,但之前的版本仍然需要。)

  3. 因为是国外的网站,所以可能网站加载缓慢。部分浏览器可能禁用此网站上的某些控件,所以如下的过程如果发现网站上缺失某些界面选项,可以试试换个浏览器。

    在这里插入图片描述


    【说明】

      在前面的下载中,可以看到,Windows 下的 JDK 数据包有三种可选的下载:Windows x64 Compressed ArchiveWindows x64 InstallerWindows x64 MSI Installer。其中,前者为 JDK 的免安装版本,后两者均为 JDK 的离线安装包版本,其中一个是 WIndows 的 EXE 安装包,另一个是 MSI 安装包。这两种安装包没有太大的区别,这里使用的是 EXE 安装包。

      也可以选择 JDK 的免安装版。很多“免安装”狂热者很喜欢选择任何软件的免安装版本。不过,由于这两者没有本质上的区别,没有任何理由非要使用免安装版本。通常,使用离线安装包版本能减少很多麻烦。


  4. 下载好了之后应该有一个名叫 jdk-17_windows-x64_bin.exe 的安装包。运行安装包,这里 JDK 的默认路径是 C:\Program Files\Java\jdk-17\请记住这个路径,下面会用上。如图:

    在这里插入图片描述

    在这里插入图片描述

  5. 这一步完成之后就可以开始设定 Path 路径了,进行这一步是为了能在 Windows 的 CMD 中识别出 C:\Program Files\Java\jdk-17\ 下 Java 的相关命令。

  6. 这要进入 Windows 的环境变量界面(这里以 Win10 教育版为例),如图(请顺着图片用鼠标点击画红圈部分):

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  7. 这里需要在 Path 中填写 Java 的命令工具的路径。不过在这之前,需要先创建环境变量 JAVA_HOME。设置 JAVA_HOME 的值为 C:\Program Files\Java\jdk-17

    (如果电脑不打算设置多用户,则这里选择 用户变量 还是 系统变量 的 Path 区别不大。这里选择 用户变量。)

    在这里插入图片描述

    在这里插入图片描述

  8. 在设置完 JAVA_HOME 之后,在 Path 中添加新的一行 %JAVA_HOME%\bin

    在这里插入图片描述

    在这里插入图片描述


    【Q & A】

      阅读本教程的很多读者可能是初次学习编程,他们看到此处时可能有如下这些疑问。笔者将这些疑问解答于此。如果这些疑问没有覆盖全部的问题,也可以在下方留言提问。

      这些问题与 Java 安装没有必然的联系,如果读者暂时不想了解这些内容,可以先收藏本博客,然后跳过这些内容,日后再来阅读。

    • Q:环境变量 Path 有什么用?为什么要设置?

      A:这个问题解释起来很复杂,限于篇幅,这里简单解释一下。我们知道,使用 Java 之前要先安装,但使用 Java 的应用并不在乎 Java 有没有安装,实际上,它们也无法知道 Java 有没有安装。它们只是需要使用 Java 的一些命令(如 javajavac 等),这些命令对应着 Java 安装目录下的一些可执行程序。如果设置了环境变量,它们就可以借助操作系统来使用 Java 的命令,否则,对它们而言就相当于没有安装 Java。

      在 Windows 中,如果设置了环境变量 Path,则这些命令的来源(路径)可以通过输入命令 where 来找到,如:


      where java

      C:\Users\XXX>where java
      C:\Program Files\Common Files\Oracle\Java\javapath\java.exe
      C:\Program Files\Java\jdk-17\bin\java.exe
      

      如果想知道关于环境变量 Path 更多的信息,可见笔者的另一篇博客:

      Windows 中的环境变量 Path 的作用:
      https://blog.csdn.net/wangpaiblog/article/details/113622196

    • Q:环境变量是什么?为什么要设置?

      A:环境变量是操作系统提供的一种简易的、对应用公开的键值数据库。它可以用来存放某应用想要传达给其它应用或记录给自己的信息。可以理解为每个应用自己主动设置的 QQ 签名。

      特别地,对于环境变量 Path,它特指可执行文件的绝对路径。其中,该可执行文件的文件名将作为可在 CMD 中输入的命令名。如果不使用环境变量 Path,则执行这些命令时需要输入全路径。其它应用往往只知道所需的命令名,而不知道所需应用的路径,所以需要提前设置环境变量 Path。

    • Q:为什么要同时设置 JAVA_HOMEPath

      A:对于简单的 Java 程序来说,实际上只需要将 Java 的命令工具的路径添加至 Path 中即可(对于简单的 Java 程序来说,实际上只需要设置 PathC:\Program Files\Java\jdk-17\bin\)。不过,很多依赖 Java 的工具技术还要求设置其它环境变量,如 JAVA_HOME,而且这个环境变量非常常用,因此这里选择在安装时就予以配置。换句话说,如果其它工具技术还要求设置更多环境变量,那就还需要单独配置。

      环境变量并不是配置的越多越好,冗余是万恶之首,请按需配置。

    • Q:环境变量 PathJAVA_HOME 有什么区别?

      A:关于这方面的内容,可见笔者的另一篇博客:

        Windows 中的环境变量 Path 与 XXXX_HOME 的区别:
      https://blog.csdn.net/wangpaiblog/article/details/112644073

    • Q:为什么非要手动配置环境变量,为什么 Java 不让安装包来完成这些操作呢?

      A:让安装包在安装时自动设置环境变量是一件很简单的事情(任何人使用一种 安装包制作工具 就可以做到这一点),Oracle 没有选择这么做主要是为了给用户提供更多的自由。用户有可能会在电脑上安装很多个版本 JDK,如果让安装包自动完成这项工作,这将影响用户原来设置的环境变量,因此安装包没有提供这项功能。

      并不是所有的安装程序都不会帮用户设置环境变量,实际上,很多应用程序的安装包都会选择帮用户进行这种设定。帮用户设置环境变量一方面可以方便用户,另一方面则会污染操作系统中的环境变量。类似的问题还发生在 WIndows 中的注册表,如果每个应用没有自觉进行合理的使用,那么整个注册表将成为一个垃圾堆。

    • Q:环境变量 CLASSPATH 是什么?为什么很多教程都写要加这个环境变量?

      A:关于网上其它教程的质量,这里不作评价。首先,对于 JDK 1.4 及以前的版本,才需要配置环境变量 CLASSPATH。它的作用是指定运行 Java 程序所需的 .class 文件,以及运行所需的 JDK 包(dt.jartools.jar)。这涉及 Java 类加载器的类加载机制,此处不做过多介绍。

      用户所编写的 Java 程序的源文件的位置是不确定的,为什么可以预先设定呢?原因是可以在环境变量的路径值中使用 . 来表示当前路径。

      为什么不把这个设定提前融入到 JDK 中呢?很遗憾,在 JDK 1.4 及以前,就是没有提供这样的功能。要知道,JDK 1.4 是 2002 年发布的,而 2001 年 Windows XP 才发布。对于 JDK 1.5 及之后的版本,也可以不用配置 CLASSPATH


    标准的配置为

    • 变量名:JAVA_HOME

      变量值:C:\Program Files\Java\jdk-17

    • 变量名:Path

      变量值:%JAVA_HOME%\bin


  9. 以上如果设置完成之后,进入 CMD 中输入 javajavac 后,应该会出现篇幅很长的说明文字,这说明前面的设置生效了。而之所以出现这些说明文字,是因为输入这些命令的时候没有输入任何参数,这种情况下,命令在运行后会提示此命令的语法格式。如果前面的设置不成功,则 CMD 会告知输入了它不认识的命令名。

    进入 CMD 的方法有很多,这里只举一例。使用快捷键 Win + R 打开 运行,然后输入 cmd

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  10. 设置完成之后,就可以安装关于 Java 的集成开发工具 IDE 了。主流的 IDE 有 IntelliJ IDEA、Eclipse 、MyEclipse、NetBeans 等。这些软件简介如下:

    • IntelliJ IDEA:

      Java 中功能最强大的 IDE。主流企业除非抵制等特殊原因,使用的都是该软件。一种观点认为,如果一个企业的 Java 开发如果没有使用该软件,而是 Eclipse,可以考虑换一家了。如果使用的是其它 IDE,可以连夜提桶跑路了。

      IntelliJ IDEA 的下载安装非常傻瓜,不再另开博客作介绍。但很遗憾,该软件不是免费的。

      IntelliJ IDEA 在 2021 年之后的版本已经以插件的形式给出了 IntelliJ IDEA 的官方汉化版。该插件名为:Chinese (Simplified) Language Pack

    • Eclipse:

      一款多年来一直流行的官方 Java IDE,支持官方汉化,完全免费。笔者在学生时代使用的第一款 Java 的 IDE 就是它。

      关于 Eclipse 的中文简体版下载安装教程,可见笔者的另一篇博客:

      Eclipse 的中文简体版安装教程:
      https://blog.csdn.net/wangpaiblog/article/details/111502047

    • 其它:

      如果你在使用其它 Java IDE,或者打算使用手机、 CMD 进行编程,请尽快改掉这个坏习惯。因为就算笔者不此提醒,你也迟早会被迫使用 IDE 进行开发。而以软件工程的角度来说,任何漏洞越晚被发现,所带来的损失越大。研究底层不要以这种方法。这种方法就像是钻木取火、骑马登山。

  11. 最后的最后,考虑到很多读者可能是初次学习编程,为了减少可能会走的弯路,笔者还编写了如下博客。欢呼吧,少年!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/135719.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 12位adc的分辨率计算_ADC的量化误差

    12位adc的分辨率计算_ADC的量化误差(一)一个基本概念分贝(dB):按照对数定义的一个幅度单位。对于电压值,dB以20log(VA/VB)给出;对于功率值,以10log(PA/PB)给出。dBc是相对于一个载波信号的dB值;dBm是相对

  • FastCGI简介

    FastCGI简介FastCGI实际上是以CGI变化而来的。因此,首先要了解CGI,下面通过介绍FastCGI来详细了解。CGI是一个协议,他描述了web服务器(nginx)和应用程序网关(php,python,等等)之间的信息交换。在实践中,当web服务器收到一个应该转发到该程序网关的请求时,只是简单的执行所需的命令(所需的应用程序)。客户端请求的详细信息通过命令行参数或环境变量来传递,然而实际的数据

  • jasypt加密原理_encrypt加密

    jasypt加密原理_encrypt加密没什么好说的了,直接看demo。添加依赖 <dependency> <groupId>com.github.ulisesbocchio</groupId> &lt

  • linux 技巧:使用 screen 管理你的远程会话

    linux 技巧:使用 screen 管理你的远程会话

  • 关于python中lambda 函数使用小结

    关于python中lambda 函数使用小结例子:如果定义普通函数,一般都是这样写:调用即:如果用lambda函数就是这么写,就是一句话:调用:以这样认为,lambda作为一个表达式,定义了一个匿名函数,冒号左边x为入口参数,右边x+

  • Java数组转list,原来是这样–有陷阱![通俗易懂]

    Java数组转list,原来是这样–有陷阱![通俗易懂]最近开发中,业务上处理,经常用到asList方法,这让我不经想起了它的很多容易让人犯错的地方或者误解的地方,所以就想抽出时间来,整理一下,和大家分享出来,深夜了,话不多说,主要以代码为主,简易的代码,你一看就知道了!大家都知道这个方法是将数组转成list,是JDK中java.util包中Arrays类的静态方法。大家使用时一定要注意(请看代码和注释,一看就明了了): Strings[]…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号