# openjdk@17 を Homebrew, apt, apk, chocolatey, MacPorts, Nix, winget でインストール

openjdk@17 のインストール経路、実行ファイル、メタデータ、AI エージェント向けセキュリティノートを確認します。

## インストール

```sh
sudo av install brew:openjdk@17
```

追加のインストールコマンド:

### macOS

- Homebrew (100%):

```sh
brew install openjdk@17
```

  証拠: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install openjdk17
```

  証拠: MacPorts ports tree: java/openjdk17/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Ubuntu apt (92%):

```sh
sudo apt install openjdk-17-dbg
```

  証拠: Ubuntu 24.04 LTS package indexes: openjdk-17-dbg from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz

- apk (92%):

```sh
sudo apk add openjdk17
```

  証拠: Alpine Linux edge package indexes: openjdk17 from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Nix (92%):

```sh
nix profile install nixpkgs#openjdk17
```

  証拠: nixpkgs package indexes: openjdk17 from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

### Windows

- Chocolatey (92%):

```sh
choco install openjdk17
```

  証拠: Chocolatey community package catalog: openjdk17 from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','openconnect-gui'

- winget (92%):

```sh
winget install --id Microsoft.OpenJDK.17 -e
```

  証拠: Windows Package Manager source index: Microsoft.OpenJDK.17 from https://cdn.winget.microsoft.com/cache/source.msix

## パッケージ情報

- **パッケージキー:** brew:openjdk@17
- **パッケージマネージャ:** Homebrew
- **パッケージマネージャページ:** <https://formulae.brew.sh/formula/openjdk@17>
- **バージョン:** 17.0.20
- **ソース概要:** Development kit for the Java programming language
- **ホームページ:** <https://openjdk.org/>
- **リポジトリ:** <https://github.com/openjdk/jdk17u>
- **上流ドキュメント:** <https://openjdk.org/>
- **ライセンス:** GPL-2.0-only WITH Classpath-exception-2.0
- **ソースアーカイブ:** <https://github.com/openjdk/jdk17u/archive/refs/tags/jdk-17.0.20-ga.tar.gz>
- **最終更新:** 2026-07-22T01:09:01Z
- **生成日時:** 2026-08-04T22:13:35+00:00

## 依存関係

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

## ビルド依存関係

- autoconf
- pkgconf

## インストール挙動

- post-install フック: 未定義
- 注意点: For the system Java wrappers to find this JDK, symlink it with sudo ln -sfn $HOMEBREW_PREFIX/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk
- Bottle: 利用可能 対象 arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## バージョンと鮮度

- ページ生成日: 2026-08-04
- マネージャ版: 17.0.20
- マネージャ更新日: 2026-07-22
- ローカルデータ: OK
- 上流リポジトリ: https://github.com/openjdk/jdk17u
- 情報: No cached GitHub release or tag data was available.
## プロジェクトの歴史と使われ方

OpenJDK 17 is the open-source reference implementation of Java SE 17. It reached General Availability on 14 September 2021 and became one of the major post-Java-11 long-term-support baselines for Java developers, vendors, build systems, CI images, and Linux/macOS package managers.

### プロジェクトの歴史

JDK 17 was produced through the OpenJDK JDK Project, whose long-running goal is to ship open-source reference implementations of the Java SE Platform on a strict six-month feature-release cadence. The release was specified by JSR 390, tracked through the JEP process, and delivered using the JDK Release Process.

The release closed a four-year gap from the previous LTS line, JDK 11, and accumulated language, VM, library, and platform work that had been previewed or incubated across intervening releases. Its feature list includes sealed classes, strong encapsulation of JDK internals, a macOS/AArch64 port, a new macOS rendering pipeline, context-specific deserialization filters, and incubating Foreign Function & Memory and Vector APIs.

### 採用の歴史

The OpenJDK release page identifies JDK 17 as a long-term-support release from most vendors. That status made it a practical migration target for organizations that skipped non-LTS releases after Java 11, and it explains why package managers keep versioned formulae such as openjdk@17 beside newer JDK lines.

JDK 17 also mattered because it tightened boundaries around unsupported internal APIs. Strong encapsulation of JDK internals moved many applications and libraries from permissive legacy access toward explicit supported APIs or deliberate command-line opens, making the release a compatibility checkpoint for the Java ecosystem.

### 使われ方

Developers use the package as a full JDK rather than only a runtime: it provides java, javac, jar, javadoc, jshell, jlink, jpackage, Java Flight Recorder tooling, and diagnostic tools such as jcmd, jmap, jstack, and jstat. In practice it is installed to compile Java code, run application servers and build tools, create custom runtime images, inspect production JVMs, and match an LTS target in CI.

For package consumers, openjdk@17 is valuable because it pins the toolchain to a stable Java language and class-library level. That matters for Gradle/Maven builds, language-server setups, container images, and projects whose dependencies certify against Java 17 rather than a moving latest-JDK target.

### パッケージ好きにとっての重要性

OpenJDK 17 is a package-manager anchor: it is old enough to be a compatibility baseline and new enough to include the post-Java-9 module-era JDK shape. Its formula preserves a vendor-neutral GPL-with-Classpath-exception build of the Java toolchain while newer OpenJDK formulae continue to advance.

The package is also a reminder that language runtimes often need versioned slots. A single unversioned JDK package cannot serve every build, because bytecode targets, compiler behavior, preview/incubator APIs, security updates, and vendor LTS windows all affect reproducible builds.

### タイムライン

- 14 September 2021: JDK 17 reached General Availability as the Java SE 17 reference implementation.
- JDK 17 feature cycle: sealed classes were finalized after preview in JDK 15 and JDK 16; strong encapsulation of internals and macOS/AArch64 support landed as part of the same release train.
- After GA: update work moved to the jdk17u line, while the OpenJDK JDK Project continued six-month feature releases.

### Related projects

- OpenJDK 17 sits between the JDK 11 and JDK 21 LTS generations. It is maintained through the JDK Updates effort, while experimental and longer-horizon work around Panama, Valhalla, Loom, Amber, and other OpenJDK projects feeds later feature releases.

### ソース

- <https://docs.oracle.com/en/java/javase/17/>
- <https://github.com/openjdk/jdk17u>
- <https://openjdk.org/jeps/409>
- <https://openjdk.org/projects/jdk/>
- <https://openjdk.org/projects/jdk/17/>


## セキュリティノート

openjdk@17 に一致するローカルシークレット処理マニフェストは見つかりませんでした。将来の対応で安定したパッケージ URL を使えるよう、パッケージメタデータはここに公開されています。


## ソースデータベース詳細

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

## 他のパッケージマネージャ記録

- Ubuntu apt - openjdk-17-dbg - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-dbg from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Java runtime based on OpenJDK (debugging symbols) | https://openjdk.java.net/
- Ubuntu apt - openjdk-17-demo - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-demo from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Java runtime based on OpenJDK (demos and examples) | https://openjdk.java.net/
- Ubuntu apt - openjdk-17-doc - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-doc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | OpenJDK Development Kit (JDK) documentation | https://openjdk.java.net/
- Ubuntu apt - openjdk-17-jdk - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-jdk from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | OpenJDK Development Kit (JDK) | https://openjdk.java.net/
- Ubuntu apt - openjdk-17-jdk-headless - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-jdk-headless from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | OpenJDK Development Kit (JDK) (headless) | https://openjdk.java.net/
- Ubuntu apt - openjdk-17-jre - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-jre from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | OpenJDK Java runtime, using Hotspot JIT | https://openjdk.java.net/
- Ubuntu apt - openjdk-17-jre-headless - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-jre-headless from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | OpenJDK Java runtime, using Hotspot JIT (headless) | https://openjdk.java.net/
- Ubuntu apt - openjdk-17-jre-zero - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-jre-zero from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Alternative JVM for OpenJDK, using Zero | https://openjdk.java.net/
- Ubuntu apt - openjdk-17-source - 17.0.11+9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: openjdk-17-source from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | OpenJDK Development Kit (JDK) source files | https://openjdk.java.net/
- MacPorts - openjdk17: package manager index match | MacPorts ports tree: java/openjdk17/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Nix - openjdk17: package manager index match | nixpkgs package indexes: openjdk17 from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- apk - openjdk17 - 17.0.20_p8-r0: package manager index match | Alpine Linux edge package indexes: openjdk17 from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Oracle OpenJDK 17 | https://github.com/openjdk/jdk17u
- apk - openjdk17-demos - 17.0.20_p8-r0: package manager index match | Alpine Linux edge package indexes: openjdk17-demos from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Oracle OpenJDK 17 (demos) | https://github.com/openjdk/jdk17u
- apk - openjdk17-doc - 17.0.20_p8-r0: package manager index match | Alpine Linux edge package indexes: openjdk17-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Oracle OpenJDK 17 (Documentation) | https://github.com/openjdk/jdk17u
- apk - openjdk17-jdk - 17.0.20_p8-r0: package manager index match | Alpine Linux edge package indexes: openjdk17-jdk from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Oracle OpenJDK 17 (JDK) (server variant) | https://github.com/openjdk/jdk17u
- apk - openjdk17-jmods - 17.0.20_p8-r0: package manager index match | Alpine Linux edge package indexes: openjdk17-jmods from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Oracle OpenJDK 17 (jmods) | https://github.com/openjdk/jdk17u


## 関連リンク

- [Terminal utility packages](https://pkg.so/ja/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Developer build packages](https://pkg.so/ja/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Language runtime packages](https://pkg.so/ja/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://pkg.so/ja/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [harfbuzz](https://pkg.so/ja/brew/harfbuzz/) - Runtime dependency declared by Homebrew.
- [libpng](https://pkg.so/ja/brew/libpng/) - Runtime dependency declared by Homebrew.
- [jpeg-turbo](https://pkg.so/ja/brew/jpeg-turbo/) - Runtime dependency declared by Homebrew.
- [freetype](https://pkg.so/ja/brew/freetype/) - Runtime dependency declared by Homebrew.
- [little-cms2](https://pkg.so/ja/brew/little-cms2/) - Runtime dependency declared by Homebrew.
- [giflib](https://pkg.so/ja/brew/giflib/) - Runtime dependency declared by Homebrew.
- [pkgconf](https://pkg.so/ja/brew/pkgconf/) - Build dependency declared by Homebrew.
- [autoconf](https://pkg.so/ja/brew/autoconf/) - Build dependency declared by Homebrew.
- [hadoop](https://pkg.so/ja/brew/hadoop/) - Popular package that depends on this formula.
- [cassandra](https://pkg.so/ja/brew/cassandra/) - Popular package that depends on this formula.
- [languagetool](https://pkg.so/ja/brew/languagetool/) - Popular package that depends on this formula.
- [ktfmt](https://pkg.so/ja/brew/ktfmt/) - Popular package that depends on this formula.
- [hbase](https://pkg.so/ja/brew/hbase/) - Popular package that depends on this formula.
- [prestodb](https://pkg.so/ja/brew/prestodb/) - Popular package that depends on this formula.
- [gravitino](https://pkg.so/ja/brew/gravitino/) - Popular package that depends on this formula.
- [gosu](https://pkg.so/ja/brew/gosu/) - Popular package that depends on this formula.
- [openjdk](https://pkg.so/ja/brew/openjdk/) - Package name indicates the same formula family.
- [openjdk@21](https://pkg.so/ja/brew/openjdk-21/) - Package name indicates the same formula family.
- [openjdk@11](https://pkg.so/ja/brew/openjdk-11/) - Package name indicates the same formula family.
- [openjdk@8](https://pkg.so/ja/brew/openjdk-8/) - Package name indicates the same formula family.
- [openjdk@25](https://pkg.so/ja/brew/openjdk-25/) - Package name indicates the same formula family.

## Combined YAML source

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


## ソース

- pkg.so package database
- package-page enrichment
- curated package history
- package version freshness
- pkgdb category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
