# Install jsvc with Homebrew, apk, apt, Nix, zypper

Wrapper to launch Java applications as daemons. Version 1.6.1 via Homebrew; verified 2026-06-22. Also installable with debian: sudo apt install jsvc.

## Install

```sh
sudo av install brew:jsvc
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install jsvc
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add jsvc
```

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

- Debian apt (92%):

```sh
sudo apt install jsvc
```

  Evidence: Debian stable package indexes: jsvc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#jsvc
```

  Evidence: nixpkgs package indexes: pkgs/by-name/js/jsvc/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- zypper (92%):

```sh
sudo zypper install apache-commons-daemon-jsvc
```

  Evidence: openSUSE Tumbleweed package metadata: apache-commons-daemon-jsvc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## Package facts

- **Package key:** brew:jsvc
- **Package manager:** Homebrew
- **Version:** 1.6.1
- **Source summary:** Wrapper to launch Java applications as daemons
- **Homepage:** <https://commons.apache.org/daemon/jsvc.html>
- **Last updated:** 2026-06-22T14:03:51-07:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- jsvc (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 1.6.1
## Project history and usage

jsvc is the Unix-oriented launcher in Apache Commons Daemon for running Java server applications as background daemons. It matters because it bridges JVM services with classic Unix service expectations: start as root for privileged work, bind low ports, switch to an unprivileged user, write pid files, and cooperate with init-style supervision.

### Project history

Apache Commons Daemon packages a Java API with native launchers. The jsvc command became the Unix side of that project, while the same project points Windows users toward procrun for Windows Service integration. The Apache Commons Daemon source tree has release tags reaching back to 1.0-era releases in 2007, and Apache release notes document a long maintenance line for changes in operating-system support and JVM integration.

### Adoption history

jsvc has been adopted mostly through server packaging rather than through standalone application fandom. It appears in Homebrew and in Linux distribution packages as the practical wrapper for Java daemons, and it is closely associated with Java server deployments such as Tomcat-style service startup.

### How it is used

Operators use jsvc when a Java process needs Unix daemon behavior that the JVM does not provide by itself. The command is especially useful for services that need a privileged startup step followed by a drop to a less privileged account.

### Why package nerds care

For package maintainers, jsvc is a small but telling example of the glue code needed to make a cross-platform runtime behave like a native Unix service. Its packaging spans Java, C, init systems, architecture support, and distribution policy.

### Timeline

- 2007: Apache Commons Daemon 1.0-era source tags appear in the Apache repository history.
- 2023: Apache Commons Daemon 1.3.4 continued the 1.x maintenance series.
- 2026: Apache Commons Daemon 1.6.x release notes recorded continued platform maintenance.

### Related projects

- Apache Commons Daemon also includes procrun for Windows service integration.
- Apache Tomcat is a common Java server context where Commons Daemon-style service launchers are relevant.

### Sources

- <https://commons.apache.org/proper/commons-daemon/changes.html>
- <https://commons.apache.org/proper/commons-daemon/index.html>
- <https://commons.apache.org/proper/commons-daemon/jsvc.html>
- <https://formulae.brew.sh/formula/jsvc>
- <https://github.com/apache/commons-daemon/tags>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Other Package-Manager Records

- Debian apt - jsvc - 1.0.15-11: normalized package name match | Debian stable package indexes: jsvc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Wrapper to launch Java applications as daemons | https://commons.apache.org/proper/commons-daemon/
- Nix - jsvc: normalized package name match | nixpkgs package indexes: pkgs/by-name/js/jsvc/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - jsvc - 1.0.15-11build1: normalized package name match | Ubuntu 24.04 LTS package indexes: jsvc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Wrapper to launch Java applications as daemons | https://commons.apache.org/proper/commons-daemon/
- apk - jsvc - 1.4.1-r1: normalized package name match | Alpine Linux edge package indexes: jsvc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Executes classfile that implements a Daemon interface | https://commons.apache.org/proper/commons-daemon/jsvc.html
- zypper - apache-commons-daemon-jsvc - 1.6.1-1.3: normalized package name match | openSUSE Tumbleweed package metadata: apache-commons-daemon-jsvc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Java daemon launcher | https://commons.apache.org/daemon/


## Combined YAML source

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


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
