Metadata-Version: 2.4
Name: readystack-oracle-jdk-license-gate
Version: 1.0.2
Summary: Finds the Java lines in your build that Oracle now bills for, and the free line that replaces each one (bundled Node.js runtime)
Author-email: ReadyStack <support@getreadystack.com>
License: Proprietary - see LICENSE.txt
Project-URL: Homepage, https://getreadystack.com/tools/oracle-jdk-license-gate?ref=pypi
Project-URL: Documentation, https://getreadystack.com/tools/oracle-jdk-license-gate?ref=pypi
Project-URL: Support, https://getreadystack.com/support
Keywords: java,jdk,oracle,license,compliance,docker,graalvm,temurin,ci
Classifier: Programming Language :: Python :: 3
Classifier: Environment :: Console
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: nodejs-wheel-binaries>=20
Dynamic: license-file

# Oracle JDK License Gate

> Runs the same checker as the npm package `@readystack/oracle-jdk-license-gate` on a Node.js runtime that pip installs for you (`nodejs-wheel-binaries`) - no system Node.js needed. Your files are checked locally.

![Oracle JDK License Gate](https://getreadystack.com/img/promo/sku156180_result_card.jpg)

Finds the Java lines in your build that Oracle now bills for, and the free line that replaces each one

## Install

```
oracle-jdk-license-gate file
```

Node 18+. The same 9 rules as the VS Code extension, from a terminal or CI.

## Free

- 6 Oracle-licensed Java pulls in the bundled sample workflow _fixtures/dirty.yml: a setup-java oracle distribution, a setup-java graalvm distribution, a download.oracle.com tarball, an oraclelicense accept header, an Oracle registry image and an SDKMAN -oracle vendor suffix. Each is named with its line, its license basis, its free-window status on today's date and the free OpenJDK line that replaces it. The OpenJDK version of the same workflow reports 0. 9 rules in all, over the file you have open, with no network call.
- `--rules` lists every rule

## With a licence ($29 once)

- $29 once. The same 9 rules swept over every file in the workspace instead of the one you have open, plus a dated evidence pack - file, line, distribution, license basis, free-window date and swap - to hand to procurement or to an Oracle audit. Team and commercial use included.

```
@readystack/oracle-jdk-license-gate --dir ./templates --report html --out report.html
```

Oracle Java SE Universal Subscription is list-priced at $15 per employee per month, counting every employee in the company, not every Java install. 250 employees x $15 per employee per month x 12 months = $45,000 a year.

## Use from an AI agent (MCP)

Claude Code · Cursor · Windsurf · any MCP client - add to your MCP config:

```json
{ "mcpServers": { "oracle-jdk-license-gate": { "command": "npx", "args": ["-y", "@readystack/oracle-jdk-license-gate", "--mcp"] } } }
```

Tools: `check_text` and `check_file` (free) · `check_dir` (licence). The agent gets every finding with the line number.

## Use in CI

```yaml
- name: Oracle JDK License Gate
  run: npx -y @readystack/oracle-jdk-license-gate --dir . --ci
```

(container: `docker run --rm -v "$PWD:/work" getreadystack/oracle-jdk-license-gate --dir /work --ci`)

The folder sweep, reports and CI mode need one licence — one payment, no subscription. Set `READYSTACK_LICENSE=<key>` or run `--license <key>` once.

[Get a licence](https://buy.polar.sh/polar_cl_0qxUalAkf4ad9kwGZmCwgbKANSqawgoJq6rVf2ZeWRh)


<!-- oracle jdk license gate -->


## Install (PyPI)

```
pip install readystack-oracle-jdk-license-gate
oracle-jdk-license-gate --help
```
