{"record":{"id":"cb33570e38248b96","repo":"jenkinsci/jenkins","slug":"no-such-item-s-exists-perhaps-you-meant-s","errorCode":null,"errorMessage":"No such item '%s' exists. Perhaps you meant '%s'?","messagePattern":"No such item '(.+?)' exists\\. Perhaps you meant '(.+?)'\\?","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"core/src/main/java/hudson/cli/ReloadJobCommand.java","lineNumber":79,"sourceCode":"        boolean errorOccurred = false;\n        final Jenkins jenkins = Jenkins.get();\n\n        final HashSet<String> hs = new HashSet<>(jobs);\n\n        for (String job_s : hs) {\n            AbstractItem job = null;\n\n            try {\n                Item item = jenkins.getItemByFullName(job_s);\n                if (item instanceof AbstractItem) {\n                    job = (AbstractItem) item;\n                } else if (item != null) {\n                    LOGGER.log(Level.WARNING, \"Unsupported item type: {0}\", item.getClass().getName());\n                }\n\n                if (job == null) {\n                    AbstractItem project = Items.findNearest(AbstractItem.class, job_s, jenkins);\n                    throw new IllegalArgumentException(project == null ?\n                        \"No such item \\u2018\" + job_s + \"\\u2019 exists.\" :\n                        String.format(\"No such item \\u2018%s\\u2019 exists. Perhaps you meant \\u2018%s\\u2019?\",\n                                job_s, project.getFullName()));\n                }\n\n                job.checkPermission(Item.CONFIGURE);\n                job.doReload();\n            } catch (Exception e) {\n                if (hs.size() == 1) {\n                    throw e;\n                }\n\n                final String errorMsg = job_s + \": \" + e.getMessage();\n                stderr.println(errorMsg);\n                errorOccurred = true;\n                continue;\n            }\n        }","sourceCodeStart":61,"sourceCodeEnd":97,"githubUrl":"https://github.com/jenkinsci/jenkins/blob/2e228ff40b14dbc8b14ffbc6edf0e4383cf744fc/core/src/main/java/hudson/cli/ReloadJobCommand.java#L61-L97","documentation":"Same reload-job null-job path, but Items.findNearest found a near AbstractItem, so the message (String.format with Unicode curly quotes) suggests it. Fires when the looked-up item is absent/not an AbstractItem and a plausible AbstractItem exists.","triggerScenarios":"`reload-job <name>` with a typo close to a real job's full name.","commonSituations":"Typo; job moved into a folder so the bare name no longer resolves; case mismatch.","solutions":["Use the suggested full name.","Verify with `Jenkins.get().getItemByFullName(name)` and re-run."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"AbstractItem near = Items.findNearest(AbstractItem.class, name, Jenkins.get());\nif (near != null) { /* offer near.getFullName() */ }","typeGuard":null,"tryCatchPattern":"catch (IllegalArgumentException e) { /* suggestion in message */ }","preventionTips":["Use findNearest to suggest corrections interactively.","Keep job-name constants in sync after renames."],"tags":["cli","job","configuration","not-found"],"backgroundTag":null,"analyzedSha":"2e228ff40b14dbc8b14ffbc6edf0e4383cf744fc","analyzedAt":"2026-08-14T07:07:15.274Z","schemaVersion":2},"datasetVersion":"2026-08-14T10:17:34.591Z"}