在我的 Java 编程生涯中使用过很多 Java 开发环境,从编写第一个 Java 程序使用的 Notepad++ 到 Eclipse 再到 IntelliJ IDEA。能编写 Java 的 IDE 产品有很多,如何选择一个好的 Java 开发环境?这对于从事 Java 程序设计的程序员来说是一个重要的问题。选择一个合适的 IDE 不仅能提高开发效率,还能减少调试和排错的时间。本篇文章将分享一些选择 Java 开发环境的关键考虑因素,并介绍如何通过 WSL + VSCode 打造一个混合开发基础 IDE 环境来开发 Java 程序。

从事 Java 程序开发的程序员主流都是做服务器端程序开发。在编写程序项目源代码阶段,通常使用 Windows 系统的 PC 进行开发工作,而当程序部署上线之后,往往运行在 Linux 系统环境中。这就要求我们不仅要熟悉 Windows 系统,还要熟悉 Linux 系统,才能更好地编写和调试 Java 程序。这也是选择开发环境时需要考虑的一个重要因素,因为一个好的 IDE 应该能够方便地在不同操作系统之间切换,并提供良好的跨平台兼容性。

目前主流的 Eclipse 和 IntelliJ IDEA 都是重量级的 Java 集成开发环境,并且针对不同系统架构开发了对应的版本。程序员在 IntelliJ IDEA for Windows 版本下开发,就必须使用 Windows 下的一些开发和调试技巧,而在 IntelliJ IDEA for Linux 中又需要掌握一些 Linux 下特有的功能和设置。那么有没有一种折中的解决方案,可以在 Windows 开发 Java 程序并且能获得 Linux 系统中的一些开发体验和特有功能呢?答案是有的。

使用 Microsoft 推出的轻量级 IDE 产品 VSCode 和最新版本 Windows 系统所提供的 WSL(Windows Subsystem for Linux)功能就可以实现这种开发模式。我个人认为此种开发方式是更符合现在 Java 程序开发的方式,虽然 JVM 为 Java 程序提供强大跨平台能力,能让 Java 程序一次编写到处运行,但在开发阶段会不可避免的使用所在的开发机上特有命令和功能。对于需要跨平台开发和调试的需求,使用 VSCode 与 WSL 的组合可以在 Windows 环境中提供类似 Linux 的开发体验,能在够让 Windows 和 Linux 系统之间文件和命令互相操作,这种方式不仅简化了环境切换还能提高开发效率,目前最新版本的 IntelliJ IDEA 的 UI/UX 设计越来越像 VSCode 了,所以个人还是更推荐 VSCode 作为基础的 IDE 产品。


基础 WSL 配置

使用 WSL 和 VSCode 作为基础开发环境,最低要求操作系统为 Windows 10。如果使用 Windows 11 则更为理想。在 Windows 11 系统中,WSL 功能已默认开启,但要正常使用还是需要一点额外的操作。WSL 本身不提供完整的 Linux 系统功能,只是提供了一个与 Linux 兼容的内核接口层和虚拟化技术在轻量级虚拟机 VM 中运行 Linux 内核,再配合其兼容层的功能使用户能够无缝结合使用 Windows 和 Linux 的功能。

默认情况下,WSL 并未内置 Linux 系统镜像,需要开发者自行选择和安装相应的 Linux 发行版。

可以通过在终端中输入以下命令来查看 WSL 官方提供的 Linux 发行版:

# 查看能安装的 WSL Linux 版本
wsl --list --online

通过列出的版本信息,建议使用默认的 Ubuntu 即可,按照指定的 Linux 发行版本到 Windows 11 系统中:

# 指定对应的 Linux 版本进行安装
wsl --install -d Ubuntu

通过以上命令就可以安装 Linux 发行版本到 Windows 系统中,命令执行流程如下图:

当有多 Linux 版本环境需求时,可以进行多个版本的选择性安装,同样使用 wsl --install -d <发行版本名称> 来获取相应的版本安装,查看已经安装的 Linux 发行版本可以使用 wsl --list --verbose 命令查看,下面是一组常用的命令:

功能命令
安装指定的版本wsl --install -d <发行版本名称>
查看已经安装的版本wsl --list --verbose
选择启动指定的 Linux 发行版wsl -d Ubuntu
更新 WSL 程序wsl --update
查看 WSL 状态wsl --status
以某个身份用户运行wsl --user
关闭 WSL 的 VMwsl --shutdown

上面只列出一些相对常用的 WSL 命令,在其官网文档上有列出更多命令说明 WSL 的基本命令

当 ubuntu 子系统安装完成之后建议更新一下系统,更新系统软件方便后面执行其他操作时能正常执行,执行以下命令可以更新 ubutnu 子系统的软件包到最新版本:

# 更新包列表和升级系统所有已安装的软件包
sudo apt update && sudo apt upgrade

{
    // Java 基础环境配置
    "java.jdt.ls.java.home": "/Users/dings/.sdkman/candidates/java/current",
    // maven 使用默认的 Java Home 路径
    "maven.terminal.useJavaHome": true,
    // maven 可执行文件文件路径
    "maven.executable.path": "/Users/dings/devsoft/apache-maven-3.9.0/bin/mvn",
    // maven 全局配置文件
    "maven.settingsFile": "/Users/dings/devsoft/apache-maven-3.9.0/conf/settings.xml",
    // 在菜单栏显示 maven 
    "maven.showInExplorerContextMenu": true,
}
{
    "version": "2.0.0",
    "tasks": [
        // 编译 java 源代码
        {
            "label": "Compiler Project",
            "type": "shell",
            "command": "javac",
            // javac 能使用的参数
            "args": [
                "-d",
                "${workspaceFolder}/bin",
                "${workspaceFolder}/src/**/*.java"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": [],
            "detail": "Compiles all Java files in the src directory"
        },
        // 清理编译 class 文件
        {
            "label": "Clean Project",
            "type": "shell",
            // 调用系统 rm 目录清理文件夹
            "command": "rm",
            "args": [
                "-rf",
                "${workspaceFolder}/bin"
            ],
            "group": "none",
            "problemMatcher": [],
            "detail": "Clean all Java files in the bin directory"
        }
    ]
}

其他资料

便宜 VPS vultr
最后修改:2024 年 06 月 24 日
如果觉得我的文章对你有用,请随意赞赏 🌹 谢谢 !