public static TomcatServiceBuilder builder(Path rootDirOrDocBase, String relativePath) {
        requireNonNull(rootDirOrDocBase, "rootDirOrDocBase");
        requireNonNull(relativePath, "relativePath");
        final Path absoluteRootDirOrDocBase = rootDirOrDocBase.toAbsolutePath();
        if (TomcatUtil.isZip(absoluteRootDirOrDocBase)) {
            return new TomcatServiceBuilder(absoluteRootDirOrDocBase, normalizeJarRoot(relativePath));
        }

        checkArgument(Files.isDirectory(absoluteRootDirOrDocBase),
                      "rootDirOrDocBase: %s (expected: a directory, WAR or JAR)", rootDirOrDocBase);

        final Path rootDir = fileSystemDocBase(rootDirOrDocBase, relativePath);
        checkArgument(Files.isDirectory(rootDir),
                      "relativePath: %s (expected: a directory)", relativePath);

        return new TomcatServiceBuilder(rootDir, null);
    }
Creates a new {@link TomcatServiceBuilder} with the web application at the specified document base,
which can be a directory or a JAR/WAR file.
tomcat10/src/main/java/com/linecorp/armeria/server/tomcat/TomcatService.java