# jasmin を Homebrew, Nix でインストール

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

## インストール

```sh
sudo av install brew:jasmin
```

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

### macOS

- Homebrew (100%):

```sh
brew install jasmin
```

  証拠: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#jasmin
```

  証拠: nixpkgs package indexes: pkgs/by-name/ja/jasmin/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## パッケージ情報

- **パッケージキー:** brew:jasmin
- **パッケージマネージャ:** Homebrew
- **パッケージマネージャページ:** <https://formulae.brew.sh/formula/jasmin>
- **バージョン:** 2.4
- **ソース概要:** Assembler for the Java Virtual Machine
- **ホームページ:** <https://jasmin.sourceforge.net/>
- **上流ドキュメント:** <https://jasmin.sourceforge.net/>
- **ライセンス:** BSD-4-Clause
- **ソースアーカイブ:** <https://downloads.sourceforge.net/project/jasmin/jasmin/jasmin-2.4/jasmin-2.4.zip>
- **生成日時:** 2026-08-04T22:13:35+00:00

## 実行可能ファイル

- jasmin (cli)
- jasmin (エイリアス)

## 依存関係

- openjdk

## インストール挙動

- post-install フック: 未定義
- Bottle: 利用可能 対象 all

## バージョンと鮮度

- ページ生成日: 2026-08-04
- マネージャ版: 2.4
- ローカルデータ: OK
- 上流リポジトリ: https://jasmin.sourceforge.net/
- 情報: No package-manager update timestamp was available.
- 情報: Release/tag comparison is only available for GitHub repositories.
## プロジェクトの歴史と使われ方

Jasmin is an assembler for the Java Virtual Machine that turns a textual, assembler-like description of a Java class into a binary .class file. Its importance comes from being one of the earliest practical ways to write, inspect, teach, and generate JVM bytecode outside the Java compiler.

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

Jasmin was created by Jon Meyer as a companion tool for the O'Reilly book "Java Virtual Machine" by Meyer and Troy Downing. The documentation dated July 1996 describes version 1.0 and presents the tool as a simple assembler that intentionally maps closely to Java class-file conventions rather than acting like a macro assembler.

The SourceForge project later hosted the continuing open-source code. Version 2 added JasminXT, defined by Daniel Reynaud, to expose lower-level bytecode control such as bytecode version directives, offsets, StackMap support, annotations, attributes, and newer JVM access flags.

### 採用の歴史

The project homepage describes Jasmin as the de-facto standard Java assembly format, used in compiler classes and cloned or ported multiple times. That adoption reflects its niche: a readable interchange and teaching syntax for people who need to reason about JVM class files directly.

### 使われ方

Users write .j files containing class directives, field definitions, method bodies, labels, and JVM instructions, then run the jasmin executable or jar to emit .class files. The guide emphasizes direct control and compact syntax, while noting that Jasmin deliberately does little compile-time validation of referenced classes or type descriptors.

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

For package collectors, Jasmin is a small but historically dense JVM tool: it preserves an early Java-era bytecode workflow, predates many modern bytecode libraries, and remains useful for compiler courses, verifier tests, reverse-engineering experiments, and hand-crafted class-file examples.

### タイムライン

- 1996: Jonathan Meyer's Jasmin user guide documents version 1.0.
- 2004: The SourceForge homepage identifies Jasmin as continuing as an open-source project.
- 2006: JasminXT documents the version 2.0 language extension for lower-level JVM control.
- Jasmin 2.1-2.4: JasminXT gains invokedynamic, StackMapTable, Unicode escapes, diagnostics fixes, and dynamic compiler class creation.

### Related projects

- Jasmin is directly tied to the JVM class-file format and the O'Reilly "Java Virtual Machine" book. JasminXT was defined for the tinapoc Java reverse-engineering toolkit and extends the original assembler language for verifier and virtual-machine test cases.

### ソース

- <https://jasmin.sourceforge.net/>
- <https://jasmin.sourceforge.net/guide.html>
- <https://jasmin.sourceforge.net/xt.html>
- source_facts.description
- source_facts.homepage


## セキュリティノート

infrastructure mutation or orchestration signal.

- **Geiger リスク:** orange / 中
- infrastructure mutation or orchestration signal

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

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

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

- Nix - jasmin: normalized package name match | nixpkgs package indexes: pkgs/by-name/ja/jasmin/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## 関連リンク

- [Secret-risk packages](https://pkg.so/ja/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://pkg.so/ja/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://pkg.so/ja/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://pkg.so/ja/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [openjdk](https://pkg.so/ja/brew/openjdk/) - Runtime dependency declared by Homebrew.
- [gradle](https://pkg.so/ja/brew/gradle/) - Shares pkgdb curated category or tags: cli, developer-tools, java, jvm.
- [yasm](https://pkg.so/ja/brew/yasm/) - Shares pkgdb curated category or tags: assembler, cli, compiler-tools, developer-tools.
- [dex2jar](https://pkg.so/ja/brew/dex2jar/) - Shares pkgdb curated category or tags: bytecode, cli, developer-tools, java.
- [micronaut](https://pkg.so/ja/brew/micronaut/) - Shares pkgdb curated category or tags: cli, developer-tools, java, jvm.
- [mill](https://pkg.so/ja/brew/mill/) - Shares pkgdb curated category or tags: cli, developer-tools, java, jvm.
- [cfr-decompiler](https://pkg.so/ja/brew/cfr-decompiler/) - Shares pkgdb curated category or tags: bytecode, cli, developer-tools, java.
- [antlr](https://pkg.so/ja/brew/antlr/) - Shares pkgdb curated category or tags: cli, compiler-tools, developer-tools, java.
- [grails](https://pkg.so/ja/brew/grails/) - Shares pkgdb curated category or tags: cli, developer-tools, java, jvm.
- [byteman](https://pkg.so/ja/brew/byteman/) - Both packages touch the same language runtime or ecosystem. Shared terms: bytecode, cli, developer, developer-tools, java.

## Combined YAML source

View the package source record on GitHub. [combined/jasmin.yml](https://github.com/mxcl/pkgdb/blob/main/combined/jasmin.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
- external package-manager database matches
- cross-ecosystem install command graph
