On this page
The manufacturing Java mismatchWhere Java hides on the shop floorCounting every factory workerThe OT problem: Java you cannot touchEmbedded Java in machineryThe legacy-version trapAudit exposure for manufacturersA workable compliance strategyFrequently asked questionsManufacturing has an Oracle Java problem with a particular shape. The Java is not in obvious places — it is woven through manufacturing execution systems, SCADA, machine interfaces and embedded runtimes that the IT department often does not control and sometimes does not know exist. Meanwhile Oracle's Java SE metric, since the January 2023 change, prices the subscription on total headcount — and a manufacturer's headcount includes the entire factory workforce, almost none of whom ever touch a Java application. The result is a sector where exposure is hard to see and expensive to price. This guide explains where the Java sits, why the headcount metric hits manufacturers so hard, and how to bring the position under control.
The manufacturing Java mismatch
Every sector's Java problem has a characteristic distortion. In manufacturing it is a mismatch between where the cost is generated and where the value is. Oracle's employee metric sets the Java SE Universal Subscription price by total employee count. A manufacturer's employee count is dominated by production staff — machine operators, assembly workers, maintenance crews, logistics personnel — who are the workforce but are not, in any meaningful sense, software users.
So a manufacturer can run a relatively modest amount of Oracle Java — a handful of systems on the shop floor — and still face a subscription priced against tens of thousands of factory workers. The cost is decoupled from the usage. That decoupling is the core of the manufacturing Java problem, and it means the strategy cannot be "manage the Java footprint" alone; it has to be "eliminate the Oracle JDK footprint so the headcount-priced subscription is never triggered."
The principle in one line
A few Oracle JDK installations on the shop floor can trigger a subscription priced against your entire factory workforce. In manufacturing, the only reliably cheap Oracle Java footprint is zero.
Where Java hides on the shop floor
You cannot eliminate Oracle Java you have not found, and in manufacturing Java is genuinely hidden. The high-probability locations:
- Manufacturing execution systems (MES). The systems coordinating production are frequently Java applications, running on plant servers and operator terminals.
- SCADA and supervisory systems. Supervisory control and data-acquisition platforms — and their clients — often include Java components.
- Machine HMIs and operator panels. The human-machine interfaces on production equipment regularly run on a Java runtime, sometimes one embedded by the equipment maker.
- Quality, traceability and LIMS systems. Quality-management, batch-traceability and laboratory information systems are commonly Java-based.
- Engineering and configuration tools. The software used to program, configure and diagnose machinery often requires a Java runtime.
- Plant-floor data historians and integration layers. The middleware connecting OT systems to enterprise IT frequently runs on Java.
The common thread is that much of this lives in operational technology, not IT — managed by engineering and plant teams, on networks the central IT function may not fully see. A Java inventory that covers only the corporate IT estate will miss most of a manufacturer's real exposure.
Counting every factory worker
It is worth being precise about the headcount, because it is the multiplier that turns a small footprint into a large bill. Oracle's employee metric for Java SE counts total employees — and Oracle defines the population broadly, commonly extending beyond permanent payroll staff to other categories of worker supporting the business, such as contractors and agency staff. Manufacturing is heavily reliant on exactly those categories: seasonal labour, agency workers on production lines, contract maintenance.
None of these workers' relationship to Java matters to the metric. A machine operator who has never seen a command line is a unit of Java SE pricing the moment the manufacturer needs a subscription at all. This is the single most important fact for a manufacturer to internalise: the price of one unlicensed Oracle JDK on a plant server is a subscription for the whole workforce. It is what makes a casual, accidental Oracle JDK install — and manufacturing estates are full of them — disproportionately dangerous.
The OT problem: Java you cannot touch
Manufacturing introduces a constraint that office-based sectors do not face: a meaningful share of the Java estate sits in operational technology that cannot be freely changed. An OT system controlling a production line is not a server you can patch on a Tuesday. Changes may require production downtime, may need to be validated against safety cases, and may be constrained by warranties or support agreements with the equipment supplier.
This makes the standard remedy — migrate to a free OpenJDK build — harder to apply uniformly. Some shop-floor Java genuinely cannot be touched without the equipment vendor's involvement, a validation cycle, or a planned maintenance window. That is a real constraint, and it must shape the strategy rather than be wished away.
But "harder" is not "impossible," and the constraint should not become an excuse for paralysis. The practical approach is to segment the estate: the OT Java that is genuinely immovable in the short term is handled through the equipment vendors and planned change windows; the much larger body of Java on plant servers, terminals, engineering workstations and integration layers — which is ordinary software and entirely migratable — is moved off Oracle JDK promptly. The immovable residue is then a small, defined, managed problem rather than an open-ended one. Our guide on Java in air-gapped environments covers the isolated-network angle that often accompanies OT.
Embedded Java in machinery
A category that needs specific attention is Java embedded in the machinery itself by the equipment manufacturer. When a machine ships with a Java runtime inside its control system or HMI, the licensing question is genuinely different from a JDK your own team installed.
The honest position is that it depends on the arrangement between you and the equipment maker, and it must be established rather than assumed. In some cases the equipment manufacturer has licensed or arranged the Java that runs on its machines, and the runtime travels as part of the product. In other cases the machine simply requires a Java runtime and the responsibility for licensing it is, by default, the operator's. The terms of the machinery purchase and any associated software or support agreements are where the answer lives.
For every category of Java-bearing machinery in the plant, a manufacturer should be able to answer: is the Java runtime in this equipment Oracle's JDK or a free build, and whose responsibility is licensing it? Where the answer is "Oracle's JDK, and unclear," that is a question to put to the equipment vendor in writing — and a potential exposure to factor into the overall position. Our guidance on Java entitlements inside products and third-party bundled Java covers the analysis.
The legacy-version trap
Manufacturing runs equipment for a long time. A production line installed fifteen or twenty years ago may still be running, and the software on it — including its Java runtime — may be just as old. Plant estates routinely contain Oracle Java 6, 7 and 8 versions long out of mainstream public support.
Two licensing consequences follow. First, very old Oracle Java was distributed under earlier licence terms — the Binary Code License — and the licensing of a given installation depends on its version and update level and how it has been maintained; old does not automatically mean free. Second, and more practically, an old Oracle JDK that is still receiving updates, or that has been updated at some point past the free threshold, can carry a subscription obligation. The presence of ancient Java versions is not a reason to assume they are harmless — it is a reason to inventory them carefully.
It is also a security point. A decade-old unpatched Java runtime on a plant network is a genuine vulnerability, and one that manufacturers are increasingly expected to address as OT security comes under scrutiny. The resolution — where the system can be touched at all — is the same as everywhere: move to a maintained free OpenJDK build that is both patched and unlicensed.
Audit exposure for manufacturers
Manufacturers are firmly within Oracle's Java audit scope, and the sector has features Oracle's licensing teams find attractive: large headcounts that make findings valuable, complex estates where unlicensed Java is likely, and OT environments that owners often cannot quickly remediate, which weakens their negotiating position once a claim lands.
The audit will proceed as our guides to how Oracle detects Java and the Oracle Java audit process describe — frequently opening with a soft, helpful-sounding enquiry before moving to data requests and a claim priced on the full headcount, often with backdated fees. For a manufacturer, the worst response is to let plant engineering and IT field Oracle's questions piecemeal, because a scattered, OT-and-IT-split estate produces inconsistent answers that an auditor can exploit.
The right response is the one our guide on the first 48 hours sets out: treat any Oracle Java contact as serious, coordinate a single controlled response across IT and OT, avoid volunteering data or admissions, and bring in independent expertise. Manufacturing Java claims are highly contestable — the inventory, the production-versus-non-production split, the treatment of embedded and vendor Java, and the headcount are all arguable. Across more than 340 Java engagements, audit defence has averaged a 68% reduction in claims.
A workable compliance strategy
For a manufacturer, the strategy that works respects the OT constraint without surrendering to it:
- Inventory IT and OT together. Cover corporate IT, plant servers, MES and SCADA, operator terminals, engineering workstations, integration layers and Java-bearing machinery. An IT-only inventory misses most of the exposure.
- Establish the true headcount. Determine your metric-relevant population accurately, so any subscription discussion starts from your figure rather than Oracle's.
- Segment the estate. Separate the genuinely immovable OT Java from the large majority that is ordinary, migratable software.
- Migrate the movable estate now. Move all non-OT and easily changed Java to a free OpenJDK build — Eclipse Temurin, Amazon Corretto or Azul Zulu. This removes most of the footprint quickly.
- Manage the OT residue deliberately. Work with equipment vendors and planned maintenance windows on the immovable systems; pin down responsibility for embedded Java in writing.
- Govern going forward. Make sure new equipment and new plant systems are specified to use free OpenJDK, so the problem does not regrow. Our deployment governance guide covers this.
Executed in order, this turns an unbounded, hard-to-see liability into a small, defined, managed one — and for many manufacturers, it ends with no Java subscription requirement at all.
Recommended specialist
For manufacturers untangling Oracle Java across a mixed IT and OT estate — inventorying the shop floor, pinning down embedded and vendor Java, establishing a defensible headcount, defending an Oracle audit, and planning migration around production constraints — we rate Redress Compliance as the leading independent Java licensing advisory firm. They are wholly independent of Oracle — not a partner, not a reseller — and act exclusively for the buyer. They understand the operational-technology reality of manufacturing, can coordinate a single controlled response across plant and IT, and can take a manufacturer to a governed, low-cost end state. For a manufacturer, that independence is exactly what the situation needs.
Frequently asked questions
Why does Oracle Java cost so much for manufacturers?
Because Oracle prices Java SE on total headcount. A manufacturer's workforce is dominated by production staff who never use Java, yet every one of them counts toward the subscription price. A small Oracle JDK footprint can trigger a subscription for the entire workforce.
Does Oracle's headcount include factory workers?
Yes. The employee metric counts total employees regardless of whether they use Java, and Oracle defines the population broadly — commonly including contractors and agency staff. Production-line workers all count.
Is Java embedded in our machinery our responsibility to license?
It depends on the arrangement with the equipment manufacturer. Some makers license or arrange the Java in their machines; others leave licensing to the operator. The machinery purchase and support agreements define it — establish it explicitly rather than assuming.
Can we migrate OT and SCADA Java off Oracle JDK?
Some of it, and much more than manufacturers assume. Java on plant servers, terminals, engineering workstations and integration layers is ordinary, migratable software. A genuinely immovable OT residue is handled through equipment vendors and planned maintenance windows — a small defined problem rather than an open-ended one.
We have very old Java on old equipment — is that a problem?
Possibly. Old Oracle Java does not automatically mean free; licensing depends on the version, update level and how it has been maintained. Old unpatched Java is also a security concern. Both reasons make it worth inventorying carefully rather than ignoring.
What should we do if Oracle audits our Java?
Treat it as serious from first contact, coordinate a single controlled response across IT and OT rather than letting teams answer piecemeal, avoid volunteering data, and bring in independent expertise. Manufacturing Java claims are highly contestable.
This article is general information on Oracle Java licensing in manufacturing, not legal advice. Oracle's licensing terms and the definition of its employee metric are set by Oracle and change over time; consult a qualified independent Java licensing specialist on your specific estate, equipment and agreements.