22.5 Java 开发环境

Java 作为跨平台编程语言的典范,其"一次编写,到处运行"的理念与 FreeBSD 的可移植性设计理念形成了有趣的技术呼应。

JDK

参见 https://www.freebsd.org/java/arrow-up-right ,这是 FreeBSD 官方 Java 开发环境配置指南。

OpenJDK

搜索名称或描述中包含“jdk”的软件包:

# pkg search -o jdk
java/bootstrap-openjdk11       Java Development Kit 11
java/bootstrap-openjdk17       Java Development Kit 17
java/bootstrap-openjdk8        Java Development Kit 8
java/openjdk11                 Java Development Kit 11
java/openjdk11-jre             Java Runtime Environment 11
java/openjdk17                 Java Development Kit 17
java/openjdk17-jre             Java Runtime Environment 17
java/openjdk18                 Java Development Kit 18
java/openjdk19                 Java Development Kit 19
java/openjdk20                 Java Development Kit 20
java/openjdk21                 Java Development Kit 21
java/openjdk22                 Java Development Kit 22
java/openjdk23                 Java Development Kit 23
java/openjdk8                  Java Development Kit 8
java/openjdk8-jre              Java Runtime Environment 8
comms/rxtx                     Native interface to serial ports in Java

本文将以 java/openjdk23 为例。

安装 OpenJDK 23

使用 pkg 安装 OpenJDK 23:

或者使用 ports 安装:

显示已安装 Java 的版本信息:

安装完成后尚未配置 $JAVA_HOME 环境变量,可使用以下命令查看其当前值:

查看 openjdk23 安装路径:

配置环境变量

请读者根据自己的 Shell,选择合适的路径。

  • ~/.bashrc(bash)

  • ~/.profile(通用)

  • ~/.shrc(FreeBSD 默认的 sh)

  • ~/.zshrc(zsh)

将以下内容写入:

刷新 shell 环境变量:

Eclipse

安装 Eclipse

使用 pkg 安装:

或者使用 ports 安装:

设置中文

点击菜单 Help,然后选择 Install New Software

取消勾选 Contact all update sites during install to find required software,然后点击 Add

清除 Location 原有内容,加入 https://mirrors.tuna.tsinghua.edu.cn/eclipse/technology/babel/update-site/latest/。再点击 Add

加载中:

勾选 Babel Language Packs in Chinese (Simplified)。点击 Next

点击 Next

同意协议:

建议先点击界面底部的任意位置,然后再进行全选,否则可能导致界面卡顿。

重启即可:

参考文献

HelloWorld

点击“创建 Java 项目”,项目名 test。

右键创建一个 ,再创建一个 java 类,名称 test

在类文件中写入以下代码内容:

点击绿色三角,即可看到输出。

参考文献

IntelliJ IDEA

安装 IntelliJ IDEA Ultimate

使用 pkg 安装:

或者使用 ports 安装:

查看安装后说明


系统默认启用了基于 kqueue 的内置(更快的)文件监视支持。若你监视大型目录结构时出现了问题,可以通过菜单路径 Help(帮助) -> Edit Custom Properties...(编辑自定义属性……)添加以下属性来禁用该功能:

使用

在 FreeBSD 下使用时可能会出现报错“编辑器中的文件不可运行”,而 Windows 版本则正常。该问题已报告为 Bug 285130 - Port java/intellij-ultimate always shows This file in the editor is not runnablearrow-up-right,记录 IntelliJ IDEA 在 FreeBSD 上的运行问题。

IntelliJ IDEA 社区版可以正常使用,但长期未更新,最新版本仍为 2020.2。

故障排除与未竟事宜

提示"the file in the editor is not runnable"

该问题仍待解决。

课后习题

  1. 配置 OpenJDK 23 开发环境,使用 Eclipse 创建一个简单的 Java Swing 程序并运行,验证中文显示。

  2. 分析 IntelliJ IDEA 在 FreeBSD 上文件不可运行的 bug,尝试通过 Ports 构建不同版本复现并定位问题。

  3. 对比 OpenJDK 与 Linux 兼容层 OracleJDK 在 FreeBSD 上的性能差异,分析兼容层带来的性能开销。

最后更新于