Automic VaultAutomic Vault

brew

Install byteman with Homebrew, apt, dnf

Java bytecode manipulation tool for testing, monitoring and tracing. Version 4.0.27 via Homebrew; verified 2026-06-22.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install byteman

local Homebrew formula metadata

Linux

Debian aptverified · 92%
sudo apt install libbyteman-java

Debian stable package indexes · libbyteman-java · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install byteman

Fedora Rawhide package metadata · byteman · source: dl.fedoraproject.org

overview

Package summary

Java bytecode manipulation tool for testing, monitoring and tracing

Commands and aliases

  • bmcheck
  • bminstall
  • bmjava
  • bmsubmit
  • bytemancheck

history

Project history and usage

Byteman is a Java agent and command-line toolkit for injecting rules into running JVM programs. It is used for tracing, monitoring, testing, and fault injection without permanently changing application source code.

Project history

The Byteman README describes the project as a tool for injecting side effects into Java programs to trace and test application behavior. Its distribution includes command scripts, an agent and rule engine, submit/install clients, sample scripts, and programmer documentation.

The official JBoss project site frames Byteman as a way to simplify Java tracing, monitoring, and testing. Its documentation history includes papers and talks by Andrew Dinn and other Red Hat/JBoss community members from 2009 onward, including fault-injection and runtime-behavior use cases.

Adoption history

Byteman adoption is strongest in the Java middleware and testing world. The official docs page lists BMUnit tests or integrations involving WildFly, Narayana, Hibernate, Infinispan, HornetQ, JGroups, IronJacamar, Mule, and other JVM projects.

Packaging in Homebrew, Debian, Ubuntu, and Fedora reflects a niche but durable role: it is not a default Java tool, but it is valuable when tests need controlled failure, race, or runtime instrumentation scenarios.

How it is used

Users write Byteman rule scripts, check them with `bmcheck` or `bytemancheck`, run Java under the agent with `bmjava`, install the agent into a running JVM with `bminstall`, and submit rules with `bmsubmit`.

Typical package-manager usage is by developers or QA engineers who need to reproduce timing bugs, inject exceptions, trace JVM internals, or test recovery paths in Java services.

Why package nerds care

Byteman is notable because it packages JVM bytecode instrumentation as a Unix-style command tool. That makes heavy Java-agent machinery installable with `brew install byteman` or distro packages instead of manual download-and-unzip workflows.

For package nerds, it sits in the same practical family as debuggers, tracers, and test harnesses: rarely needed by everyone, but exactly the right sharp tool when ordinary unit tests cannot reach a runtime behavior.

Timeline

  • 2009: Official Byteman materials include a Jazoon presentation on bytecode manipulation for multi-threaded testing.
  • 2011: Byteman appears in AOSD and JUDCon materials about tracing, debugging, and testing.
  • 2013: Official docs list JUDCon talks and growing JVM-project usage.
  • 2020s: Version 4.x documentation remains published through the JBoss Byteman site.

Related projects

  • BMUnit is the Byteman-oriented unit-testing integration referenced by the official tutorials and project list.
  • ObjectWeb ASM is used by Byteman for bytecode manipulation, according to the README.
  • WildFly, Narayana, Hibernate, Infinispan, HornetQ, and JGroups are listed by the official docs as projects using Byteman.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 1 platform targets.
  • Installs with 1 runtime dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
bmcheckcliglobal executable
bminstallcliglobal executable
bmjavacliglobal executable
bmsubmitcliglobal executable
bytemancheckcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version4.0.27
manager updated2026-06-22
local dataok
upstreamnot checked
latest detectednot detected

https://byteman.jboss.org/

install metadata

Package metadata

Package keybrew:byteman
Version4.0.27
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/byteman
Homepagehttps://byteman.jboss.org/
Repositoryhttps://github.com/bytemanproject/byteman
Upstream docshttps://byteman.jboss.org/docs.html
LicenseLGPL-2.1-or-later
Source archivehttps://downloads.jboss.org/byteman/4.0.27/byteman-download-4.0.27-bin.zip
Last updated2026-06-22T14:02:56-07:00
Pulseupdated
Dependenciesopenjdk
Bottleavailable (on all)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namebyteman
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

libbyteman-java 4.0.20-1

Java agent-based bytecode injection tool

https://byteman.jboss.org

sudo apt install libbyteman-java
  • Section: java
  • Architecture: all
  • Source Package: byteman
  • 9 dependencies
  • 1 optional deps
  • normalized package name match
  • Matched by: Byteman
Debian stable package indexes · deb.debian.org · Debian stable package indexes: libbyteman-java from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Ubuntu apt95%

libbyteman-java 4.0.20-1

Java agent-based bytecode injection tool

https://byteman.jboss.org

sudo apt install libbyteman-java
  • Section: universe/java
  • Architecture: all
  • Source Package: byteman
  • 9 dependencies
  • 1 optional deps
  • normalized package name match
  • Matched by: Byteman
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: libbyteman-java from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
dnf95%

byteman 4.0.26-3.fc44

Java agent-based bytecode injection tool

http://www.jboss.org/byteman

sudo dnf install byteman
  • License: LicenseRef-Callaway-LGPLv2+
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: byteman
  • 5 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Byteman
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: byteman from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf95%

byteman-bmunit 4.0.26-3.fc44

TestNG and JUnit integration for Byteman.

http://www.jboss.org/byteman

sudo dnf install byteman-bmunit
  • License: LicenseRef-Callaway-LGPLv2+
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: byteman
  • 2 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Byteman
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: byteman-bmunit from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf95%

byteman-dtest 4.0.26-3.fc44

Remote byteman instrumented testing.

http://www.jboss.org/byteman

sudo dnf install byteman-dtest
  • License: LicenseRef-Callaway-LGPLv2+
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: byteman
  • 2 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Byteman
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: byteman-dtest from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf95%

byteman-javadoc 4.0.26-3.fc44

Javadoc for byteman

http://www.jboss.org/byteman

sudo dnf install byteman-javadoc
  • License: LicenseRef-Callaway-LGPLv2+
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: byteman
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Byteman
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: byteman-javadoc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf95%

byteman-rulecheck-maven-plugin 4.0.26-3.fc44

Maven plugin for checking Byteman rules.

http://www.jboss.org/byteman

sudo dnf install byteman-rulecheck-maven-plugin
  • License: LicenseRef-Callaway-LGPLv2+
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: byteman
  • 2 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Byteman
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: byteman-rulecheck-maven-plugin from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment