{"record":{"id":"fa9e07d17207ed7e","repo":"JetBrains/intellij-community","slug":"build-process-ecj-path-does-not-exist","errorCode":"build.process.ecj.path.does.not.exist","errorMessage":"Path to eclipse ecj compiler does not exist: {0}","messagePattern":"Path to eclipse ecj compiler does not exist: (.+?)","errorType":"exception","errorClass":"ExecutionException","httpStatus":null,"severity":"error","filePath":"java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java","lineNumber":1747,"sourceCode":"\n    var launcherCp = new ArrayList<String>();\n    launcherCp.add(ClasspathBootstrap.getResourcePath(launcherClass));\n    launcherCp.addAll(BuildProcessClasspathManager.getLauncherClasspath(project));\n    if (compilerPath != null) {   // can be null (in the case of JDK 9+)\n      launcherCp.add(compilerPath);\n    }\n\n    var includeBundledEcj = shouldIncludeEclipseCompiler(projectConfig);\n    var customEcjPath = (Path)null;\n    if (includeBundledEcj) {\n      var path = EclipseCompilerConfiguration.getOptions(project, EclipseCompilerConfiguration.class).ECJ_TOOL_PATH;\n      if (path != null && !path.isBlank()) {\n        customEcjPath = Path.of(path);\n        if (Files.exists(customEcjPath)) {\n          includeBundledEcj = false;\n        }\n        else {\n          throw new ExecutionException(JavaCompilerBundle.message(\"build.process.ecj.path.does.not.exist\", customEcjPath.toAbsolutePath()));\n        }\n      }\n    }\n\n    ClasspathBootstrap.appendJavaCompilerClasspath(launcherCp, includeBundledEcj);\n    if (customEcjPath != null) {\n      launcherCp.add(customEcjPath.toAbsolutePath().toString());\n    }\n\n    cmdLine.addParameter(\"-classpath\");\n    cmdLine.addClasspathParameter(launcherCp, List.of());\n\n    cmdLine.addParameter(launcherClass.getName());\n\n    var cp = myClasspathManager.getBuildProcessClasspath(project);\n    if (profileWithYourKit) {\n      var yjpControllerFileName = \"yjp-controller-api-redist.jar\";\n      var yjpControllerPath = Path.of(cmdLine.getWorkingDirectory(), yjpControllerFileName);","sourceCodeStart":1729,"sourceCodeEnd":1765,"githubUrl":"https://github.com/JetBrains/intellij-community/blob/be881553f2a76ac8b4ea53950d93f0de78295c19/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java#L1729-L1765","documentation":"Error \"Path to eclipse ecj compiler does not exist: {0}\" thrown in JetBrains/intellij-community.","triggerScenarios":"The project is configured to compile with the Eclipse compiler but the configured ecj jar path does not exist.","commonSituations":"The ecj jar was moved or deleted after being configured, or the setting was imported from another machine.","solutions":["Update the path to the Eclipse compiler (ecj) in Settings | Build, Execution, Deployment | Compiler | Java Compiler so it points to an existing ecj jar.","Switch back to Javac if you do not need the Eclipse compiler."],"exampleFix":"Settings | Compiler | Java Compiler -> Use compiler: Eclipse, and set the ecj jar path to a valid location such as C:/libs/ecj-4.30.jar.","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"be881553f2a76ac8b4ea53950d93f0de78295c19","analyzedAt":"2026-08-14T14:13:06.425Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}