# 使用 Homebrew 安装 openj9

查看 openj9 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:openj9
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install openj9
```

  证据: local Homebrew formula metadata

## 软件包事实

- **软件包键:** brew:openj9
- **软件包管理器:** Homebrew
- **软件包管理器页面:** <https://formulae.brew.sh/formula/openj9>
- **版本:** 0.60.0
- **来源摘要:** High performance, scalable, Java virtual machine
- **主页:** <https://www.eclipse.org/openj9/>
- **仓库:** <https://github.com/eclipse-openj9/openj9>
- **上游文档:** <https://www.eclipse.org/openj9/>
- **许可证:** EPL-2.0 OR Apache-2.0 OR (GPL-2.0-only WITH Classpath-exception-2.0) OR (GPL-2.0-only WITH OpenJDK-assembly-exception-1.0)
- **源码归档:** <https://github.com/eclipse-openj9/openj9/archive/refs/tags/openj9-0.60.0.tar.gz>
- **最后更新:** 2026-08-02T00:19:41+09:00
- **已生成:** 2026-08-04T22:13:35+00:00

## 可执行文件

- jdmpview (cli)
- jitserver (cli)
- jpackcore (cli)
- jrunscript (cli)
- traceformat (cli)
- jdmpview (别名)
- jitserver (别名)
- jpackcore (别名)
- jrunscript (别名)
- traceformat (别名)

## 依赖

- freetype
- giflib
- harfbuzz
- jpeg-turbo
- libpng
- little-cms2

## 构建依赖

- autoconf
- bash
- cmake
- openjdk@25
- pkgconf

## macOS 提供的库

- libffi

## 安装行为

- post-install 钩子: 未定义
- 注意事项: This formula provides the latest supported LTS JDK. If you need a specific version, then you will have to use a different method to install OpenJ9. For the system Java wrappers to find this JDK, symlink it with sudo ln -sfn $HOMEBREW_PREFIX/opt/openj9/libexec/openj9.jdk /Library/Java/JavaVirtualMachines/openj9.jdk
- Bottle: 可用 于 arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## 版本和新鲜度

- 页面生成时间: 2026-08-04
- 管理器版本: 0.60.0
- 管理器更新时间: 2026-08-02
- 本地数据: OK
- 上游仓库: https://github.com/eclipse-openj9/openj9
- 检测到的最新版本: openj9-0.60.0 (当前)
## 项目历史与用法

Eclipse OpenJ9 is an independent Java Virtual Machine implementation used with OpenJDK class libraries to build a complete JDK. It competes with HotSpot by emphasizing startup, footprint, reliability, throughput, cloud deployment, diagnostics, and JVM implementation diversity.

### 项目历史

OpenJ9 descends from IBM's J9 JVM, which IBM used in production Java runtimes before contributing it to the Eclipse Foundation. The Eclipse project says OpenJ9 represents hundreds of person-years of effort and underpins IBM SDK, Java Technology Edition, a component of many IBM enterprise products.

IBM completed open sourcing J9 as Eclipse OpenJ9 in September 2017. The OpenJ9 repository states that significant parts of the code are also open source through Eclipse OMR, the reusable runtime-component project that shares technology below language-specific virtual machines.

### 采用历史

OpenJ9's adoption story is unusual because the implementation had enterprise production history before its Eclipse-era open-source life. Its public positioning is not as a replacement for Java SE itself, but as a JVM that combines with OpenJDK class libraries to produce JDK builds tuned for smaller memory footprint, startup behavior, and cloud deployments.

The project also matters because the Java ecosystem benefits from multiple JVM implementations. The OpenJ9 README explicitly frames that competition as a source of runtime innovation in compressed references, cloud features, ahead-of-time compilation, performance, and lower memory use.

### 使用方式

Users choose an OpenJ9-based JDK when they want a Java runtime with different startup, memory, JIT, diagnostics, class-sharing, and cloud-oriented tuning behavior than HotSpot. The documentation exposes a large set of OpenJ9-specific runtime options, garbage-collection policies, class data sharing, JITServer, AOT compiler support, CRIU support, and diagnostic tools.

The Homebrew formula is keg-only and tells macOS users to symlink its JDK bundle into /Library/Java/JavaVirtualMachines when they want system Java wrappers to discover it, which reflects the usual JDK packaging friction: multiple Java runtimes can be installed side by side but must be selected deliberately.

### 为什么软件包爱好者会关心

OpenJ9 is package-nerd catnip because it separates the JDK into pieces packagers often blur together: OpenJDK class libraries, a non-HotSpot JVM, Eclipse OMR runtime components, Java compatibility constraints, and platform-specific JDK bundle registration. A package named openj9 is not just another Java version; it is a different VM lineage.

### 时间线

- 2017: IBM contributed the J9 VM to the Eclipse Foundation as the Eclipse OpenJ9 open-source project.
- 2017: IBM SDK, Java Technology Edition version 8 incorporated the Eclipse OpenJ9 VM beginning with service refresh 5.
- Homebrew packages OpenJ9 as a keg-only JDK and describes it as providing a supported LTS JDK rather than an arbitrary Java version selector.

### Related projects

- OpenJ9 is closely related to OpenJDK, Eclipse OMR, IBM SDK Java Technology Edition, Eclipse Adoptium builds, and the HotSpot JVM that ships in the main OpenJDK reference implementation.

### 来源

- <https://eclipse.dev/openj9/>
- <https://eclipse.dev/openj9/docs/introduction/>
- <https://formulae.brew.sh/formula/openj9>
- <https://github.com/eclipse-openj9/openj9>
- <https://www.ibm.com/docs/en/sdk-java-technology/8?topic=openj9-user-documentation>


## 安全说明

broad file, network, media, or database tool signal. generalized runtime or code generation signal.

- **Geiger 风险:** orange / 中
- broad file, network, media, or database tool signal
- generalized runtime or code generation signal
- infrastructure mutation or orchestration signal

## 源数据库详情

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** openj9
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** yes
- **URL Keys:** stable


## 相关链接

- [Secret-risk packages](https://pkg.so/zh-hans/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://pkg.so/zh-hans/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Language runtime packages](https://pkg.so/zh-hans/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://pkg.so/zh-hans/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [harfbuzz](https://pkg.so/zh-hans/brew/harfbuzz/) - Runtime dependency declared by Homebrew.
- [libpng](https://pkg.so/zh-hans/brew/libpng/) - Runtime dependency declared by Homebrew.
- [jpeg-turbo](https://pkg.so/zh-hans/brew/jpeg-turbo/) - Runtime dependency declared by Homebrew.
- [freetype](https://pkg.so/zh-hans/brew/freetype/) - Runtime dependency declared by Homebrew.
- [little-cms2](https://pkg.so/zh-hans/brew/little-cms2/) - Runtime dependency declared by Homebrew.
- [giflib](https://pkg.so/zh-hans/brew/giflib/) - Runtime dependency declared by Homebrew.
- [pkgconf](https://pkg.so/zh-hans/brew/pkgconf/) - Build dependency declared by Homebrew.
- [cmake](https://pkg.so/zh-hans/brew/cmake/) - Build dependency declared by Homebrew.
- [autoconf](https://pkg.so/zh-hans/brew/autoconf/) - Build dependency declared by Homebrew.
- [bash](https://pkg.so/zh-hans/brew/bash/) - Build dependency declared by Homebrew.
- [openjdk](https://pkg.so/zh-hans/brew/openjdk/) - Shares pkgdb curated category or tags: cli, java, language-runtime, openjdk, runtime.
- [openjdk@25](https://pkg.so/zh-hans/brew/openjdk-25/) - Shares pkgdb curated category or tags: cli, java, jvm, language-runtime, runtime.
- [jruby](https://pkg.so/zh-hans/brew/jruby/) - Shares pkgdb curated category or tags: cli, java, jvm, language-runtime.
- [openjdk@17](https://pkg.so/zh-hans/brew/openjdk-17/) - Shares pkgdb curated category or tags: cli, java, language-runtime, openjdk, runtime.
- [openjdk@21](https://pkg.so/zh-hans/brew/openjdk-21/) - Shares pkgdb curated category or tags: cli, java, language-runtime, openjdk, runtime.
- [openjdk@11](https://pkg.so/zh-hans/brew/openjdk-11/) - Shares pkgdb curated category or tags: cli, java, language-runtime, openjdk, runtime.
- [abcl](https://pkg.so/zh-hans/brew/abcl/) - Shares pkgdb curated category or tags: cli, jvm, language-runtime.
- [kawa](https://pkg.so/zh-hans/brew/kawa/) - Shares pkgdb curated category or tags: cli, jvm, language-runtime.

## Combined YAML source

View the package source record on GitHub. [combined/openj9.yml](https://github.com/mxcl/pkgdb/blob/main/combined/openj9.yml)


## 来源

- pkg.so package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- pkgdb category and tag curation
- package relationship graph
- cross-ecosystem install command graph
