首页 游戏 软件 资讯 排行榜 专题
首页
编程语言
Ubuntu系统下Java程序编译步骤详解

Ubuntu系统下Java程序编译步骤详解

热心网友
12
转载
2026-05-07

在 Ubuntu 操作系统上进行 Java 开发,流程清晰且高效。掌握从环境搭建到项目运行的标准路径,是提升开发效率的关键。本文将系统性地介绍在 Ubuntu 中配置 Java 开发环境、编写首个程序、管理多版本以及解决常见问题的完整流程。

免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈

Ja va代码Ubuntu编译流程

一 安装 JDK 并验证

在 Ubuntu 上安装 Java 开发工具包(JDK)非常便捷。推荐使用 OpenJDK,其 11 和 17 版本是长期支持(LTS)的主流选择,稳定性高。

首先,打开终端,更新软件包索引以确保获取最新的安装源:

  • sudo apt update

随后,根据需求安装指定版本的 OpenJDK:

  • 安装 OpenJDK 11: sudo apt install openjdk-11-jdk
  • 安装 OpenJDK 17: sudo apt install openjdk-17-jdk

安装完成后,需验证 JDK 是否成功安装并配置。执行以下命令检查 Java 运行时环境和编译器版本:

  • ja va -version
  • ja vac -version

若终端显示对应的版本信息,则表明安装成功。对于希望快速上手的开发者,也可直接安装默认 JDK 版本:sudo apt install default-jdk

二 编写并编译运行 Hello World

完成环境配置后,通过经典的“Hello World”程序来验证整个开发链路是否畅通。

首先,创建一个 Java 源代码文件。可以使用任何文本编辑器,例如使用 nano 编辑器:

  • nano HelloWorld.ja va

在打开的文件中,输入以下基础代码(请注意,公共类名必须与文件名完全一致):

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

保存并退出编辑器。接下来进行编译,在终端中切换到源文件所在目录,执行编译命令:

  • ja vac HelloWorld.ja va

若编译无误,当前目录将生成一个 HelloWorld.class 字节码文件。最后,运行该程序:

  • ja va HelloWorld

一个常见的注意事项是:运行命令使用的是类名,切勿添加 .class 后缀。当终端成功输出“Hello, World!”时,即标志着您的第一个 Java 程序在 Ubuntu 上运行成功。

三 环境变量与多版本管理

为了更高效地进行 Java 开发,正确配置环境变量至关重要。设置 JA VA_HOME 是许多开发工具(如 Maven、Tomcat)正常运行的基础。同时,掌握多版本 JDK 的管理技巧也能应对不同的项目需求。

配置 JA VA_HOME 环境变量

通常,我们在用户主目录的 Shell 配置文件中进行设置,例如 ~/.bashrc。使用编辑器打开该文件:

  • nano ~/.bashrc

在文件末尾添加以下配置(此处以 OpenJDK 11 的典型安装路径为例,请根据实际安装版本调整路径):

export JA VA_HOME=/usr/lib/jvm/ja va-11-openjdk-amd64
export PATH=$JA VA_HOME/bin:$PATH

保存文件后,使配置立即生效:source ~/.bashrc。之后可通过 echo $JA VA_HOME 命令验证设置是否成功。

若需为所有用户设置全局环境变量,可编辑 /etc/environment 文件,添加 JA VA_HOME 路径,并同样执行 source 命令。

管理多个 JDK 版本

当不同项目需要不同的 Java 版本时,可以利用 Ubuntu 系统自带的 update-alternatives 工具进行灵活切换。

首先,为每个已安装的 JDK 版本注册一个备选方案(优先级数字可自定义,数值越高优先级越高):

  • sudo update-alternatives --install /usr/bin/ja va ja va /usr/lib/jvm/ja va-11-openjdk-amd64/bin/ja va 1

完成所有版本的注册后,执行以下命令,系统将以交互方式列出所有已注册的 Java 版本,供您选择默认使用的版本:

  • sudo update-alternatives --config ja va

四 常见问题与实用技巧

在开发过程中可能会遇到一些典型问题。掌握其排查方法并运用一些实用技巧,能显著提升开发体验。

1. 错误提示:“找不到或无法加载主类”

这是初学者常遇到的问题。请重点检查:

  • 源代码中 public class 后声明的类名,是否与文件名(不含 .ja va 扩展名)完全一致,包括大小写。
  • 运行命令应为 ja va 类名,而非 ja va 类名.class

2. 错误提示:“命令未找到”

如果系统无法识别 ja vaja vac 命令,通常是由于 PATH 环境变量未正确设置。请返回第三步,确认 $JA VA_HOME/bin 已添加到 PATH 中,并重新执行 source ~/.bashrc 命令。

3. 提升效率的实用技巧

  • 一键编译运行:可以使用 && 连接符将编译和运行命令组合:ja vac HelloWorld.ja va && ja va HelloWorld。该命令会在编译成功后自动执行运行操作。
  • 使用项目构建工具:当项目规模增长,涉及多个源文件或外部依赖库时,建议尽早采用如 MavenGradle 等专业的构建工具。它们能自动化处理依赖管理、编译、测试、打包等复杂流程,是现代 Java 开发的标准实践。

至此,您已经掌握了在 Ubuntu 系统上从零开始搭建 Java 开发环境、运行程序、配置管理以及问题排查的完整路径。接下来,便是在实际项目开发中不断实践与深化这些技能。祝您开发顺利!

来源:https://www.yisu.com/ask/34172652.html
免责声明: 游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关攻略

Ubuntu系统安装Java 8与Java 9环境详细教程
编程语言
Ubuntu系统安装Java 8与Java 9环境详细教程

在Ubuntu16 04系统中安装Java8和Java9。需注意Java9可能不完全向后兼容。安装均通过添加Webupd8PPA仓库、执行安装命令并同意许可协议完成。安装后需分别设置默认版本或环境变量,最后可通过`java-version`命令验证安装结果。

热心网友
05.07
LNMP环境MySQL数据库查询性能优化实战指南
数据库
LNMP环境MySQL数据库查询性能优化实战指南

LNMP环境中优化数据库查询需系统实施。关键步骤包括:根据业务选择存储引擎,优化表结构与字段类型,合理创建索引,编写高效SQL语句避免全表扫描。引入缓存层减轻数据库压力,使用连接池管理连接,必要时采用查询提示或分区表。定期维护数据库并监控慢查询,以实现持续性能提升。

热心网友
05.07
HBase数据恢复的完整流程与详细步骤解析
数据库
HBase数据恢复的完整流程与详细步骤解析

HBase数据恢复需按步骤进行:先确认集群状态并定位故障,操作前备份数据。恢复时可选用内置工具、快照、WAL回放或手动替换文件等方法。完成后验证数据完整性与集群健康,持续监控优化。注意版本兼容性,在业务低峰期操作,并建立定期备份策略。

热心网友
05.07
HBase数据备份的常用方法与最佳实践指南
数据库
HBase数据备份的常用方法与最佳实践指南

HBase数据备份主要有五种方法。使用自带工具可进行全量或增量备份。快照功能通过创建元数据引用实现快速备份与恢复。直接备份HDFS底层文件适合长期归档或迁移。第三方工具如DistCp和XtraBackup提供压缩、加密等增强功能。集群间复制机制支持实时同步,满足异地容灾需求。

热心网友
05.07
Apache2服务器优化数据库连接性能的实用方法
数据库
Apache2服务器优化数据库连接性能的实用方法

优化Apache2应用的数据库连接可提升性能,主要方法包括:使用持久连接或连接池复用连接以降低开销;限制并发连接数防止数据库过载;利用缓存减少查询;优化SQL语句与索引;调整数据库配置以适应负载;持续监控并动态调优,保障系统高效运行。

热心网友
05.07

最新APP

宝宝过生日
宝宝过生日
应用辅助 04-07
台球世界
台球世界
体育竞技 04-07
解绳子
解绳子
休闲益智 04-07
骑兵冲突
骑兵冲突
棋牌策略 04-07
三国真龙传
三国真龙传
角色扮演 04-07

热门推荐

Bitget交易所2026年发展前景与市场排名深度解析
web3.0
Bitget交易所2026年发展前景与市场排名深度解析

2026年,Bitget在交易所排行榜上展现出强劲的竞争力。其表现主要体现在用户资产安全体系的持续加固、多元化产品矩阵的成熟与创新,以及在合规与全球化布局上的显著进展。平台通过优化现货与衍生品交易体验,并深化Web3生态建设,巩固了其在行业中的领先地位,获得了市场与用户的广泛认可。

热心网友
05.07
NET开发中HttpClient使用避坑指南与最佳实践详解
编程语言
NET开发中HttpClient使用避坑指南与最佳实践详解

HttpClient的7个常见陷阱与规避指南 在 NET 生态里进行项目开发,HttpClient 几乎是调用外部 API 绕不开的一个工具。它的上手门槛很低,用起来很顺手,但恰恰是这份“简单”,让不少开发者放松了警惕。如果不清楚它内部的运作机制,一不小心就可能掉进坑里,轻则请求失败,重则引发服务

热心网友
05.07
NETCore与Linux服务器时间同步问题的多种解决方案详解
编程语言
NETCore与Linux服务器时间同步问题的多种解决方案详解

如何解决 NET Core项目与Linux服务器之间的时间同步问题 导语 搞分布式系统的开发者,多少都踩过时间不同步的“坑”。这事说大不大,说小不小——日志对不上、订单乱取消、交易出岔子,追根溯源,往往是几台机器的时间“各走各的”。尤其是在 NET Core应用遇上Linux服务器的场景,时区、格式

热心网友
05.07
NET 4.7 如何使用 NLog 将日志记录到数据库
编程语言
NET 4.7 如何使用 NLog 将日志记录到数据库

1 首先安装必要的NuGet包 第一步,咱们得把项目里需要的“砖瓦”——也就是那几个关键的NuGet包——给准备好。具体是下面这几个: NLog:日志记录的核心库。 NLog Config (可选):如果你想让配置文件自动生成,可以加上这个。 当然,别忘了根据你用的数据库类型,安装对应的提供程序。

热心网友
05.07
NETCore消息队列RabbitMQ实现方法与代码示例
编程语言
NETCore消息队列RabbitMQ实现方法与代码示例

在 NET Core 中玩转 RabbitMQ:从零搭建可靠的消息队列 消息队列是现代应用解耦和异步通信的基石,而 RabbitMQ 无疑是这个领域的明星选手。它基于 AMQP 协议,为不同应用程序间的可靠消息传递提供了强大支持。今天,我们就来深入聊聊,如何在 NET Core 环境中,亲手搭建

热心网友
05.07