Java语言的安装、配置、编译与运行过程

 更新时间:2025年02月19日 10:40:02   作者:阳爱铭  
本文详细介绍了如何在Windows、macOS和Linux操作系统上安装、配置Java开发环境(JDK),并展示了如何编写、编译和运行Java程序,同时,还提供了常见问题的解决方案,正确配置Java环境对Java开发至关重要,是进行Java编程的基础

引言

Java 作为全球最广泛使用的编程语言之一,其强大的跨平台特性和丰富的生态系统,使其在企业级应用、移动开发、大数据处理等领域具有重要地位。

正确配置 Java 开发环境是每一个 Java 开发者的必备技能。

本文将详细介绍如何在不同操作系统上安装、配置 Java 环境,并展示如何编译和运行 Java 程序。

1. Java 环境的安装

1.1 安装 JDK

Java 开发工具包(JDK)是进行 Java 开发的基础。JDK 包含了编译器(javac)、运行时环境(JRE)、调试器(jdb)等工具。

1.1.1 在 Windows 上安装 JDK

下载 JDK:访问 Oracle 官方网站OpenJDK 下载适用于 Windows 的 JDK 安装包。

运行安装程序:双击下载的安装包,按照提示进行安装,建议安装路径为 C:\Program Files\Java\jdk-<version>

配置环境变量

  • 右键点击“此电脑”,选择“属性” -> “高级系统设置” -> “环境变量”。
  • 在“系统变量”中找到 Path,点击“编辑”,添加 JDK 的 bin 目录路径,例如 C:\Program Files\Java\jdk-<version>\bin
  • 新建 JAVA_HOME 变量,值为 JDK 的安装路径,例如 C:\Program Files\Java\jdk-<version>

1.1.2 在 macOS 上安装 JDK

下载 JDK:同样访问 Oracle 官方网站OpenJDK 下载适用于 macOS 的 JDK 安装包。

运行安装程序:双击下载的 .dmg 文件,按照提示安装 JDK。

配置环境变量

  • 打开终端,输入 nano ~/.bash_profilenano ~/.zshrc(根据使用的 Shell 类型)。

添加以下行:

export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/bin:$PATH
  • 保存并退出,然后执行 source ~/.bash_profilesource ~/.zshrc 使配置生效。

1.1.3 在 Linux 上安装 JDK

下载 JDK:访问 Oracle 官方网站OpenJDK 下载适用于 Linux 的 JDK 安装包,或者使用包管理器安装。

使用包管理器安装

对于基于 Debian 的系统(如 Ubuntu),执行:

sudo apt update
sudo apt install openjdk-<version>-jdk

对于基于 Red Hat 的系统(如 CentOS),执行:

sudo yum install java-<version>-openjdk-devel

配置环境变量

  • 打开终端,输入 nano ~/.bashrcnano ~/.zshrc

添加以下行:

export JAVA_HOME=/usr/lib/jvm/java-<version>-openjdk
export PATH=$JAVA_HOME/bin:$PATH
  • 保存并退出,然后执行 source ~/.bashrcsource ~/.zshrc 使配置生效。

2. 验证 Java 安装

安装完成后,验证 Java 是否安装成功以及环境变量是否配置正确。

验证 JDK 安装

  • 打开命令行工具(Windows 上的命令提示符,macOS 和 Linux 上的终端)。
  • 输入 java -versionjavac -version,应显示安装的 Java 版本信息。
$ java -version
java version "17.0.1" 2021-10-19 LTS
Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)

$ javac -version
javac 17.0.1

3. 编写、编译与运行 Java 程序

3.1 编写 Java 程序

使用任何文本编辑器(如 Notepad++、Sublime Text、VSCode)或集成开发环境(IDE,如 IntelliJ IDEA、Eclipse、NetBeans)编写 Java 代码。

示例代码 HelloWorld.java

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

3.2 编译 Java 程序

使用命令行工具进行编译:

  1. 打开命令行工具。
  2. 导航到 HelloWorld.java 文件所在目录。
  3. 执行以下命令进行编译:
javac HelloWorld.java

编译成功后,会生成一个 HelloWorld.class 文件,这是 Java 虚拟机(JVM)可以执行的字节码文件。

3.3 运行 Java 程序

使用命令行工具运行编译后的 Java 程序:

java HelloWorld

输出应为:

Hello, World!

4. 常见问题及解决方案

4.1 javajavac 命令未找到

如果在执行 java -versionjavac -version 时出现“命令未找到”的错误,可能是环境变量未正确配置。

检查 PATHJAVA_HOME 环境变量是否正确设置,并确保重新启动命令行工具或执行 source 命令使配置生效。

4.2 编译错误

如果在编译过程中出现错误,检查代码是否存在语法错误,文件名是否与类名一致。

例如,类名为 HelloWorld 的 Java 文件应命名为 HelloWorld.java

4.3 运行时错误

如果在运行过程中出现错误,检查是否正确编译了 Java 文件,是否在正确的目录下执行 java 命令,类名是否拼写正确。

结论

正确配置 Java 开发环境是进行 Java 开发的第一步。通过本文的详细介绍,读者应能够在不同操作系统上安装和配置 JDK,并熟练编写、编译和运行 Java 程序。

无论是新手开发者还是资深工程师,掌握这些基本技能将为后续的 Java 开发奠定坚实基础。

随着技术的发展,Java 生态系统也在不断演进,保持对新版本和新特性的关注,将有助于提升开发效率和代码质量。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解SpringBoot定制@ResponseBody注解返回的Json格式

    详解SpringBoot定制@ResponseBody注解返回的Json格式

    这篇文章主要介绍了详解SpringBoot定制@ResponseBody注解返回的Json格式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • spring注入在有常量的情况下使用@AllArgsConstructor操作

    spring注入在有常量的情况下使用@AllArgsConstructor操作

    这篇文章主要介绍了spring注入在有常量的情况下使用@AllArgsConstructor操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • SpringBoot中AOP的动态匹配和静态匹配详解

    SpringBoot中AOP的动态匹配和静态匹配详解

    这篇文章主要介绍了SpringBoot中AOP的动态匹配和静态匹配详解,在创建代理的时候对目标类的每个连接点使用静态切点检查,如果仅通过静态切点检查就可以知道连接点是不匹配的,则在运行时就不再进行动态检查了,需要的朋友可以参考下
    2023-09-09
  • Spring MVC简介_动力节点Java学院整理

    Spring MVC简介_动力节点Java学院整理

    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。今天先从写一个Spring MVC的HelloWorld开始,让我们看看如何搭建起一个Spring mvc的环境并运行程序,感兴趣的朋友一起学习吧
    2017-08-08
  • Java.lang.OutOfMemoryError: GC overhead limit exceeded错误的解决

    Java.lang.OutOfMemoryError: GC overhead limit

    本文主要介绍了Java.lang.OutOfMemoryError: GC overhead limit exceeded错误的解决,错误是由于堆空间不足导致GC频繁运行,从而引起的,下面就来介绍一下解决方法
    2025-03-03
  • Java程序包不存在的两种解决方法

    Java程序包不存在的两种解决方法

    有时候我们在导入程序之后,系统会给出错误提示:Java:程序包xxxx不存在,本文主要介绍了Java程序包不存在的两种解决方法,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • Java Optional避免空指针异常的实现

    Java Optional避免空指针异常的实现

    空指针异常一直是困扰开发者的常见问题之一,本文主要介绍了Java Optional避免空指针异常的实现,帮助开发者编写更健壮、可读性更高的代码,减少因空值处理不当而引发的错误,感兴趣的可以了解一下
    2025-04-04
  • Spring session redis 修改默认的序列化方法(案例)

    Spring session redis 修改默认的序列化方法(案例)

    这篇文章主要介绍了Spring session redis 修改默认的序列化方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • Linux下Java环境变量的安装与配置

    Linux下Java环境变量的安装与配置

    这篇文章给大家介绍了Linux下Java环境变量的安装与配置,本文以jdk1.6.0_43为例,给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧
    2018-07-07
  • Mybatis判断空字符串的问题

    Mybatis判断空字符串的问题

    这篇文章主要介绍了Mybatis判断空字符串的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03

最新评论