Automic VaultAutomic Vault

brew

Install jvm-mon with Homebrew

Console-based JVM monitoring. Version 1.3 via Homebrew; verified 2026-06-15.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install jvm-mon

local Homebrew formula metadata

overview

Package summary

Console-based JVM monitoring

Commands and aliases

  • jvm-mon

history

Project history and usage

jvm-mon is a console-based JVM monitoring tool for inspecting Java processes from a terminal. Its README describes the target use case plainly: SSH into a server and see what is happening inside running JVM applications.

Project history

The jvm-mon repository was created on 2017-02-06 and published release 0.1 the same day. Early releases were aimed at a terminal UI for JVM process monitoring, showing running processes, CPU and garbage-collection load, heap usage, and top threads.

The 1.3 release, published on 2025-03-28, marked a substantial implementation change: the README says the tool was rewritten in Go, distributed as a single executable, able to monitor Java 8 and above, and no longer required an existing JDK. The bundled agent jar attaches to a selected JVM and communicates metrics back over a socket.

Adoption history

jvm-mon has a niche but clear adoption profile: terminal-first Java operations. The input package metadata lists Homebrew packaging, and the repository metadata showed about 1,500 GitHub stars on 2026-07-01, which is notable for a focused JVM terminal monitor.

Its adoption sits beside older JVM tools such as JConsole, VisualVM, `jstat`, and `jcmd`, but jvm-mon's package-manager appeal is the single CLI for quick remote inspection.

How it is used

Users launch `jvm-mon`, select a running JVM process, and press Enter to monitor it. The README documents keys for quitting and killing a process, and lists CPU, GC, heap, and thread information as available metrics.

The 1.3 architecture bundles a Java agent jar inside the executable, extracts it at startup, attaches it to the selected JVM, and exchanges metric data through a socket connection.

Why package nerds care

jvm-mon is package-nerd interesting because it turns a normally GUI-heavy or JDK-tool-heavy monitoring task into a Homebrew-installable terminal binary.

The Go rewrite matters operationally: fewer runtime assumptions and no required local JDK make the package easier to ship onto servers where operators want a quick inspection tool rather than a monitoring platform.

Timeline

  • 2017-02-06: The jvm-mon GitHub repository is created and release 0.1 is published.
  • 2017-03-27: jvm-mon 0.3 is published.
  • 2020-04-29: jvm-mon 1.0-ea1 is published.
  • 2025-03-20: jvm-mon 1.1 is published.
  • 2025-03-28: jvm-mon 1.3 is published with the Go rewrite documented in the README.

Related projects

  • JConsole and VisualVM are GUI-oriented JVM monitoring tools in the broader Java ecosystem.
  • `jstat` and `jcmd` are command-line JDK tools for JVM inspection.
  • Java agents and the JVM attach mechanism are the underlying technique jvm-mon uses to collect metrics.

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 8 platform targets.
  • Build metadata lists 2 build 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
jvm-moncliglobal 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 version1.3
manager updated2026-06-15
local dataok
upstreamcurrent
latest detected1.3

https://github.com/ajermakovics/jvm-mon

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:jvm-mon
Version1.3
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/jvm-mon
Homepagehttps://ajermakovics.github.io/jvm-mon/
Repositoryhttps://github.com/ajermakovics/jvm-mon
Upstream docshttps://github.com/ajermakovics/jvm-mon
LicenseApache-2.0
Source archivehttps://github.com/ajermakovics/jvm-mon/archive/refs/tags/1.3.tar.gz
Last updated2026-06-15T10:20:19-04:00
Pulseupdated
Build dependenciesgo, openjdk
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

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

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
  • package relationship graph
  • package version freshness
  • package-page enrichment