jenkinsci/jenkins · error · IllegalArgumentException

No such node '{nodeName}'

Error message

No such node '{nodeName}'

What it means

IllegalArgumentException from the args4j NodeOptionHandler during option parsing when Jenkins.get().getNode(nodeName) returns null. Unlike the item handler, this offers no 'did you mean' suggestion.

Source

Thrown at core/src/main/java/hudson/cli/handlers/NodeOptionHandler.java:57

 *
 * @author ogondza
 * @since 1.526
 */
@OptionHandlerExtension
public class NodeOptionHandler extends OptionHandler<Node> {

    public NodeOptionHandler(CmdLineParser parser, OptionDef option, Setter<Node> setter) {

        super(parser, option, setter);
    }

    @Override
    public int parseArguments(Parameters params) throws CmdLineException {

        String nodeName = params.getParameter(0);

        final Node node = Jenkins.get().getNode(nodeName);
        if (node == null) throw new IllegalArgumentException("No such node '" + nodeName + "'");

        setter.addValue(node);
        return 1;
    }

    @Override
    public String getDefaultMetaVariable() {

        return "NODE";
    }
}

View on GitHub (pinned to 2e228ff40b)

Solutions

  1. List nodes (`Jenkins.get().getNodes()` or the CLI node listing) and copy the exact name.
  2. For the built-in/controller node use the built-in name, not an agent name.
  3. Recreate the node if it was removed.
Defensive patterns

Strategy: validation

Validate before calling

if (Jenkins.get().getNode(nodeName) == null) {
    throw new IllegalArgumentException("No such node: " + nodeName);
}

Try / catch

catch (IllegalArgumentException e) { /* unknown node name */ }

Prevention

When it happens

Trigger: Any CLI command taking a NODE option with a name that is not a registered Jenkins node.

Common situations: Typo in node name; node deleted; referencing the built-in node by a name other than the empty string/'built-in'.

Related errors


AI-assisted analysis of jenkinsci/jenkins@2e228ff40b (2026-08-14). Data as JSON: /api/errors/34a91f7bf3bec9f1. Report an issue: GitHub.