Info
这篇文章会详细介绍如何配置 Java 环境,包括 JDK,JRE 与 CLASSPATH,从而可以在命令行编译运行 Java。
首先,在官网找到自己心仪的 JDK 版本,下载对应的 JDK。安装时,可以自行更改路径。
Note
在 Oracle 官网下载会需要注册账号,没有的话注册即可。
安装好 Java 后,我们需要配置 Java 相关的环境变量。
Warning
以下所有环境变量均为系统环境变量。
Oracle 提供的 JDK 安装包可能会自动帮你添加对应的环境变量,个人不推荐这种方式,可以删除默认添加的环境变量。
打开环境变量界面,编辑 Path
变量,找到所有带有 Oracle
,javapath
之类字样的值,删除即可。
下载 JDK 时,会自动包括 JRE,但是高版本的 JDK 已经没有单独的 jre\
目录了,java
与 javac
都在 bin
目录下,因此网上很多文章都具有一定的误导性,是没有必要再单独下载 JRE 的。
首先,我们添加 JAVA_HOME
变量,如下,具体路径改为你的安装路径即可,路径结尾不加 \
。
接下来,在 Path
变量里添加 Java 路径,如下。
与 JAVA_HOME
变量添加方式相同,我们需要在系统环境变量中添加 CLASSPATH
,具体值如下,注意开头的 .
。
1 | .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; |
配置好环境变量后,打开命令行,输入如下命令测试,如果两条命令均无报错,且版本一致,那么恭喜你(大概率)完成了 Java 环境的配置。
1 | > java -version |
Error
低版本 java
无法运行高版本 javac
编译出的字节码,因此最好保证二者版本相同。
你也可以用 where
命令查看 java
和 javac
的安装位置,注意 where
要带 .exe
后缀,否则可能无法正常输出。
1 | > where.exe java |
我们通过一个简单的示例来演示如何在命令行中编译与运行 Java。
Info
开始之前,请确保你通过了 2.4 的测试。
对于没有包名的程序,我们书写以下 Java 代码,位于 src\
目录下。
1 | public class Main { |
在命令行中,通过 javac
进行编译,如果没有输出,表示编译成功,并且可以看到目录下多了同名的 .class
文件。
1 | src> javac Main.java |
如果输出中文出现乱码报错,可以添加
-encoding
参数更改默认编码,如下。
1 src> javac Main.java -encoding UTF-8
接下来,通过 java
命令运行生成的字节码。
1 | src> java Main |
如果一切正常,那么恭喜你,你真正完成了 Java 环境的配置!🥳
利用包管理 Java 代码是好的编程习惯,因此推荐大家多多了解。对于有包名的情况,我们需要在运行时加上包名。我们的程序如下,将其放在 src/top/tony/
目录下,src/
为项目根目录,包名为 top.tony
。
1 | package top.tony; |
现在,编译和运行的命令如下,编译与无包名相同,指名 .java
路径即可,运行时需要在项目根目录执行 java
命令,并指定包名。
1 | src> javac .\top\tony\Main.java |
配置过程中,一个常见的问题是 Error: Could not find or load main class ...
,关于该错误,可以参考这一篇文章。
如果还是有问题,可以自行搜索解决方案,实在无法解决可以联系助教寻求帮助。🫡