eclipse-vertx/vert.x · error · RuntimeException
Compilation failed
Error message
Compilation failed
What it means
Diagnostics processing failure in CompilingClassLoader: although the compilation task technically completed, a recorded diagnostic indicates an error (this RuntimeException is thrown when propagating the failed diagnostic detail). The offending diagnostic describes the concrete compile error in the verticle source.
Source
Thrown at vertx-core/src/main/java/io/vertx/core/impl/verticle/CompilingClassLoader.java:89
JavaFileObject javaFile = standardFileManager.getJavaFileForInput(StandardLocation.SOURCE_PATH, resolveMainClassName(), Kind.SOURCE);
JavaCompiler.CompilationTask task = javaCompiler.getTask(null, fileManager, diagnostics, null, null, Collections.singleton(javaFile));
boolean valid = task.call();
if (valid) {
for (Diagnostic<?> d : diagnostics.getDiagnostics()) {
String code = d.getCode();
if (code == null || (!code.startsWith("compiler.warn.annotation.method.not.found") &&
!"compiler.warn.proc.processor.incompatible.source.version".equals(code))) {
log.info(d);
}
}
} else {
for (Diagnostic<?> d : diagnostics.getDiagnostics()) {
log.warn(d);
}
throw new RuntimeException("Compilation failed!");
}
} catch (Exception e) {
throw new RuntimeException("Compilation failed", e);
}
}
public String resolveMainClassName() {
return javaSourceContext.getClassName();
}
@Override
protected Class<?> findClass(String name) throws ClassNotFoundException {
byte[] bytecode = getClassBytes(name);
if (bytecode == null) {
throw new ClassNotFoundException(name);
}
return defineClass(name, bytecode, 0, bytecode.length);
}
public byte[] getClassBytes(String name) {
return fileManager.getCompiledClass(name);View on GitHub (pinned to fb308bd8c3)
Solutions
- Inspect the diagnostic message carried with the exception for the compile error
- Fix the corresponding source line and redeploy
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at vertx-core/src/main/java/io/vertx/core/impl/verticle/CompilingClassLoader.java:89 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of eclipse-vertx/vert.x@fb308bd8c3 (2026-09-06).
Data as JSON: /api/errors/15fd6a69abe87d93.
Report an issue: GitHub.