{"record":{"id":"c757527f87c3cf20","repo":"pinpoint-apm/pinpoint","slug":"boot-class-not-found-bootclass-error","errorCode":null,"errorMessage":"boot class not found. bootClass: Error:","messagePattern":"boot class not found\\. bootClass: Error:","errorType":"exception","errorClass":"BootStrapException","httpStatus":null,"severity":"critical","filePath":"agent-module/bootstraps/bootstrap/src/main/java/com/navercorp/pinpoint/bootstrap/AgentBootLoader.java","lineNumber":75,"sourceCode":"                    systemPropertyManager.backup(agentOption);\n                    Constructor<?> constructor = bootStrapClazz.getDeclaredConstructor(Map.class);\n                    return constructor.newInstance(agentOption.toMap());\n                } catch (InstantiationException e) {\n                    throw new BootStrapException(\"boot create failed. Error:\" + e.getMessage(), e);\n                } catch (IllegalAccessException e) {\n                    throw new BootStrapException(\"boot method invoke failed. Error:\" + e.getMessage(), e);\n                } finally {\n                    systemPropertyManager.restore();\n                }\n            }\n        });\n    }\n\n    private Class<?> getBootStrapClass(String clazzName) {\n        try {\n            return this.classLoader.loadClass(clazzName);\n        } catch (ClassNotFoundException e) {\n            throw new BootStrapException(\"boot class not found. bootClass:\" + bootClass + \" Error:\" + e.getMessage(), e);\n        }\n    }\n}\n","sourceCodeStart":57,"sourceCodeEnd":79,"githubUrl":"https://github.com/pinpoint-apm/pinpoint/blob/744c3d3075e595656abb1ae331ad2c0e4c9eb996/agent-module/bootstraps/bootstrap/src/main/java/com/navercorp/pinpoint/bootstrap/AgentBootLoader.java#L57-L79","documentation":"AgentBootLoader.getBootStrapClass calls this.classLoader.loadClass(clazzName) to load the Pinpoint boot class (default com.navercorp.pinpoint.profiler.DefaultAgent or configured bootClass). If the class cannot be found on the boot classloader path, a BootStrapException 'boot class not found. bootClass:... Error:' is thrown and agent boot aborts.","triggerScenarios":"loadClass throwing ClassNotFoundException for the configured bootClass name — wrong -Dprofiler.bootclass value, or the pinpoint bootstrap/profiler jar is missing from the boot classloader's search path.","commonSituations":"Typos in the bootClass system property; incomplete agent installation where pinpoint-profiler or bootstrap jars were not placed on the bootstrap path; shading/repackaging the agent and dropping the DefaultAgent class; version mismatch between bootstrap and profiler jars.","solutions":["Check the bootClass configuration (profiler.bootclass or the default) for typos and confirm the class exists in the shipped jars","Verify the agent installation: pinpoint-bootstrap and pinpoint-profiler jars are present and on the -javaagent / boot path","Confirm bootstrap and profiler module versions match — do not mix jars from different Pinpoint releases","If a custom boot class is used, ensure it is packaged into the jar the boot classloader reads"],"exampleFix":null,"handlingStrategy":"validation","validationCode":"String name = bootClassName.replace('.', '/') + \".class\";\nif (bootClassLoader.getResource(name) == null) {\n    throw new IllegalStateException(\"Boot class resource missing on boot classpath: \" + name);\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Verify the agent directory contains pinpoint-bootstrap and pinpoint-profiler jars before -javaagent launch","Spell-check custom bootClass properties","Keep bootstrap/profiler jar versions in lockstep"],"tags":["classloader","classpath","java","agent-startup"],"backgroundTag":"class-not-found","analyzedSha":"744c3d3075e595656abb1ae331ad2c0e4c9eb996","analyzedAt":"2026-09-07T18:48:45.289Z","contentChangedAt":"2026-09-07T18:48:45.289Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}