eclipse-vertx/vert.x · error · VertxException

Unexpected nested url : ${nestedURL}

Error message

Unexpected nested url : ${nestedURL}

What it means

Parsing guard when unpacking a jar: URL: the nested URL extracted from the outer jar URL has an unexpected form that cannot be processed further. The offending nested URL string is included in the message; this signals a malformed jar URL rather than user configuration error.

Source

Thrown at vertx-core/src/main/java/io/vertx/core/file/impl/FileResolverImpl.java:360

                  Path relative = path.relativize(dir);
                  cache.cacheDir(relative.toString());
                  return FileVisitResult.CONTINUE;
                }
                @Override
                public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
                  Path relative = path.relativize(file);
                  cache.cacheFile(relative.toString(), file.toFile(), false);
                  return FileVisitResult.CONTINUE;
                }
              });
            } else {
              // jar:file:/path/to/nesting.jar!/path/to/nested.jar
              try (ZipFile zip = new ZipFile(root)) {
                extractFilesFromJarFile(zip, fileName);
              }
            }
          } else {
            throw new VertxException("Unexpected nested url : " + nestedURL);
          }
          break;
        default:
          throw new VertxException("Nesting more than two levels is not supported");
      }
    } catch (IOException e) {
      throw new VertxException(FileSystemImpl.getFileAccessErrorMessage("unpack", url.toString()), e);
    }
    return cache.getFile(fileName);
  }

  /**
   * Extract a subset of the entries to the cache.
   */
  private void extractFilesFromJarFile(ZipFile zip, String entryFilter) throws IOException {
    Enumeration<? extends ZipEntry> entries = zip.entries();
    while (entries.hasMoreElements()) {
      ZipEntry entry = entries.nextElement();

View on GitHub (pinned to fb308bd8c3)

Solutions

  1. Check the packaging/classpath for a malformed jar URL (e.g. invalid nesting like jar:jar:file:...)
  2. Repackage or reference the resource with a plain file: or single-level jar: URL
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at vertx-core/src/main/java/io/vertx/core/file/impl/FileResolverImpl.java:360 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/e75427edf8d6ccdb. Report an issue: GitHub.