halo-dev/halo · error · NotFoundException

Plugin [{}] not found.

Error message

Plugin [{}] not found.

What it means

Error "Plugin [{}] not found." thrown in halo-dev/halo.

Source

Thrown at application/src/main/java/run/halo/app/plugin/resources/ReverseProxyRouterFunctionFactory.java:171

        } else {
            String routePath = buildRoutePath(pluginName, rule);
            PathContainer pathContainer = PathPatternParser.defaultInstance
                    .parse(routePath)
                    .extractPathWithinPattern(PathContainer.parsePath(request.path()));
            filename = pathContainer.value();
        }

        String filePath = PathUtils.combinePath(directory, filename);
        return getResourceLoader(pluginName).getResource(filePath);
    }

    private ResourceLoader getResourceLoader(String pluginName) {
        if (PluginConst.SYSTEM_PLUGIN_NAME.equals(pluginName)) {
            return applicationContext;
        }
        DefaultResourceLoader resourceLoader = BundleResourceUtils.getResourceLoader(pluginManager, pluginName);
        if (resourceLoader == null) {
            throw new NotFoundException("Plugin [" + pluginName + "] not found.");
        }
        return resourceLoader;
    }
}

View on GitHub (pinned to d2f5165f9c)

Solutions

  1. Confirm the plugin named in the error is installed and started; the reverse proxy route targets a running plugin.
  2. Reload or reinstall the plugin so its routes are registered.
  3. Check for a stale reverse-proxy configuration referencing a plugin that was uninstalled or renamed.

When it happens

Trigger: Thrown at application/src/main/java/run/halo/app/plugin/resources/ReverseProxyRouterFunctionFactory.java:171 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of halo-dev/halo@d2f5165f9c (2026-08-14). Data as JSON: /api/errors/3d9499cc4cf61d90. Report an issue: GitHub.