《On Java 中文版 基础卷》阅读笔记 安装 Java 和本书示例 02
2.1 编辑器
如果想要新建和修改 Java 文件,首先需要一个编辑器的软件。在安装 Java 的过程中,有时也需要利用编辑器来修改系统配置文件。
用于编程的编辑器种类千差万别,从全能型的集成开发环境(IDE,比如 IntelliJ IDEA 或者 VSCode)到简单的文本处理软件,多如繁星。
如果你已经习惯于使用某种 IDE,那么在阅读本书的过程中可以放心地继续使用它。如果你还没有习惯使用的 IDE,那么可以试试 VSCode。
VSCode 编辑器是免费的开源软件,安装过程十分简单,且支持全平台(包括 Windows、Mac 和 Linux)。
同时,它内置了 Java 模式,在你打开 Java 文件的时候就可以自动生效。
此外,它还提供了一些让人爱不释手的功能。感兴趣的话,你可以在其网站上浏览更多的详细信息。
世界上还有许多其他的编辑器,人们热衷于讨论各种编辑器孰优孰劣。如果你找到了一个更喜欢的编辑器,转到这个新的编辑器也并不困难。重要的是,选择一个编辑器并适应它。
虽然 VSCode 很适合初学者,然而当你进一步深入 Java 编程时,也许你会想要研究一下 JetBrains 公司推出的 IntelliJ IDEA 所提供的一些更为强大的编程功能。对我来说,两者我都会经常使用。
2.2 shell
如果你没有任何编程经验,那么可能对操作系统的 shell(在 Windows 中也叫作命令提示符)也不太熟悉。
shell 的历史可以追溯到计算机的早期,那时所有的计算机操作都是通过敲击命令来实现的,并且计算机通过显示响应来回应,这一切都是基于文本模式的。
虽然和后来出现的图形用户界面 (graphical user interface, GUI) 相比,shell 显得十分原始,不过它依然提供了大量的重要功能。
本书在安装 Java 的过程中和运行 Java 程序时,会经常使用 shell。
2.2.1 运行 shell
Windows 11:
首先,按照下面的方法启动资源管理器 (Windows Explorer) 以浏览目录。
点击 Windows+E 键。
打开资源管理器之后,就可以通过鼠标双击进入文件夹。你可以选择跳转至自己想查看的目录,
然后右键选择在终端打开,这样就在目标目录打开了一个 shell 窗口。
或输入 cmd 回车
或输入 powershell 回车
PowerShell 和 CMD 的区别:
PowerShell 是 Windows 推出的兼容 Linux 命令的 shell 窗口,CMD shell 窗口使用的是 Windows 的命令,大家一般更加熟悉 Linux 的命令。
2.2.2 目录(文件夹)
目录是 shell 的基础要素之一。
目录可以包含文件或其他目录。
你可以把一个目录想象成带有分枝的一棵树。
比如你的系统里有一个名为 books 的目录,其中包含 math 和 art 这两个目录,那么就可以说目录 books 拥有 math 和 art 这两个子目录。
因为 books 是父目录,所以还可以用 books/math 以及 books/art 来表示两者。
需要注意的是,Windows 系统使用反斜杠 “\” 而不是斜杠 “/” 来分隔一个目录的各个部分。
2.2.3 shell 基础操作
本节所介绍的 shell 操作在不同的操作系统中大致相同。下面介绍一些本书中会用到的 shell 基础操作和命令。
- 切换目录:使用 cd 命令加上目录名进入目录,或者使用 cd… 返回上级目录。如果你希望在进入一个目录的同时还能记住之前的目录名,可以使用 pushd 加上新目录名进入这个目录,之后可以使用 popd 返回之前的目录。
- 目录列表:使用 ls 命令(Windows 系统中则是 dir)可以展示当前目录下的所有文件和子目录。使用通配符 * 可以对展示的内容进行过滤。比如,当你需要列出所有后缀是 “.java” 的文件时,可以使用 ls*.java(Windows 系统中则是 dir*.java)。更进一步,如果你希望列出所有以字母“F” 开头且后缀名是 “.java” 的文件,可以使用 ls F*.java(Windows 系统中则是 dir F*.java)。
- 新建目录:使用 mkdir(make directory 的缩写)命令加上目录名可以新建一个目录(Windows 系统中则使用 md)。例如,使用 mkdir books(Windows 系统中则是 md books)就会在当前目录下新建一个名为 books 的目录。
- 删除文件:使用 rm(remove 的缩写)命令加上文件名可以删除该文件(Windows 系统中则使用 del)。例如,使用 rm somefile.java 可以删除名为 somefile.java 的文件(Windows 系统中则使用 del somefile.java)。
- 删除目录:使用 rm -r 命令可以删除目录及其包含的所有文件(Windows 系统中则使用 deltree)。例如,使用 rm -r books 可以删除 books 目录及其包含的所有文件(Windows 系统中则使用 deltree books)。
- 重复命令:所有 3 种操作系统都支持在shell窗口里用 “↑” 键显示上一条命令,方便你编辑和再次使用该命令。在 Mac/Linux 系统下,!! 会执行上一条命令,!n 则会执行第 n 条命令。
- 命令历史:在 Mac/Linux 系统下使用 history 或者在 Windows 系统下按下 F7 键,就可以查看所有使用过的命令。Mac/Linux 系统下还会显示命令的历史序号,这样你就可以方便地重复该命令。
- 解压文件:后缀名为 “.zip” 的文件是一个包含了其他文件的压缩包文件。Mac/Linux 系统提供了用于解压的 unzip 命令,如果是 Windwos 系统,你可以通过互联网安装 unzip 命令。
如果你希望学习更多关于 shell 的知识,请在百度百科中搜索 “Windows Shell”。如果你使用的是 Mac/Linux 系统,可以搜索 “Bash Shell”。
2.3 安装 Java
为了编译和运行本书的示例,首先必须安装 JDK(Java Development Kit, Java 开发工具集)。
虽然新版本的 Java 一般是后向兼容的,但本书依然使用 JDK 8,不过本书中的例子在 JDK 8 及其以上的版本中应该都是有效的。
如果你想选择新版本的JDK,推荐选择一个长期支持 (LTS) 的版本—在编写本书时,最新的 LTS 版本是 JDK 17。
1 下载 JDK
1.1 下载地址
https://www.oracle.com/java/technologies/downloads/
1.2 如何下载
02 安装 JDK
03 JDK 配置环境变量
2.4 确认安装成功
2.5 安装和运行本书示例
本书所有源代码都可以在GitHub网站上获取:https://github.com/BruceEckel/Onjava8-examples。这些源代码可以用于在校学习或者其他教育类场景。
如何打开 GitHub
Gradle 教程
成功安装 Java 之后,你可以通过以下过程来安装和运行本书示例。
1.通过 GitHub 代码仓库下载本书中的示例。
2.将下载的文件解压到你选择的目录中。
3.打开你解压 OnJava8-Examples 文件的目录,并在此目录中打开一个 shell 窗口。
4.如果你进入了正确的目录,会看到 gradlew 和 gradlew.bat 文件以及大量的其他文件和目录。其中,目录名和章节的英文名是一一对应的。
5.在shell窗口里输入 “gradlew run”(对应 Windows 系统)或者 “./gradlew run”(对应 Mac/Linux 系统)。
或者使用 CMD
第一次运行这个程序,Gradle 需要花费一些时间来自行安装以及安装一些其他的工具包。一旦安装完毕,后续的构建和运行就会快速得多。
需要注意的是,第一次运行 gradlew 时,需要确保计算机是连接到互联网的,以便 Gradle 可以下载一些必要的工具包。
Gradle 基础任务
本书工程代码的构建会产生大量的 Gradle 任务。这是因为 Gradle 使用一种称为约定优于配置 (convention over configuration) 的运行方式,
这意味着即便你只是尝试完成一个非常基础的任务,Gradle 依然会创建很多任务。
因此,那些 “搭顺风车” 的任务要么不适用于本书,要么不能正确运行。
下面是一些你可能会用到的 Gradle 任务。
- gradlew compileJava:编译本书中所有可被编译的 Java 文件(有些文件不可编译,仅用于演示语言的错误用法)。
- gradlew run:对于本书中所有可执行的 Java 文件(有些文件是库组件),先编译再执行。
- gradlew test:执行所有的单元测试(相关知识点将会在第 16 章中讲述)。
- gradlew chapter: ExampleName:编译和运行一个特定的示例程序,比如 gradlew objects: HelloDate。