Finding codes

Finding codes #

CodeSeverityMeaning
NO_DESCRIPTORCRITICALThe jar has no plugin.yml or paper-plugin.yml at all - it's not a valid plugin.
DESCRIPTOR_INVALID_YAMLCRITICALThe descriptor is not valid YAML - the server cannot load the plugin.
DESCRIPTOR_TOO_LARGEWARNINGThe descriptor is larger than 5 MB uncompressed and was not read (possible zip bomb or corrupted archive). The jar's other checks are skipped.
NO_NAME_DECLAREDCRITICALThe descriptor has no name:.
INVALID_PLUGIN_NAMECRITICALThe plugin name contains characters the server rejects (allowed: letters, digits, space, _, ., -).
NO_VERSION_DECLAREDCRITICALThe descriptor has no version:.
NO_MAIN_DECLAREDCRITICALThe descriptor doesn't declare a main: class.
MAIN_CLASS_MISSINGCRITICALThe declared main class has no matching .class file in the jar.
MAIN_CLASS_NOT_VISIBLEINFOThe main class is not stored as a normal .class entry (protected or obfuscated jar), but the server loaded and enabled the plugin, so it works. If the plugin is not running, MAIN_CLASS_MISSING is reported instead.
MAIN_CLASS_UNREADABLEWARNINGThe main class entry exists but its bytecode header couldn't be read - the jar may be corrupted.
UNREADABLE_JARCRITICALThe file isn't a valid zip/jar archive at all (truncated download, corrupted rebuild, etc).
SCAN_ERRORWARNINGPluginGuard hit an unexpected error while inspecting this jar; the scan continued with the other jars.
JAVA_VERSION_TOO_NEWCRITICALThe main class was compiled for a newer Java version than this server is running - the JVM will refuse to load it.
LIBRARY_JAVA_VERSION_TOO_NEWWARNINGOther classes inside the jar (usually a bundled library) were compiled for a newer Java version than the server runs. The plugin starts, but fails when it uses those classes.
MISSING_API_VERSIONWARNINGNo api-version is declared; the server treats the plugin as a legacy plugin.
API_VERSION_INVALIDWARNINGThe declared api-version is not a valid version such as 1.21.
API_VERSION_NEWER_THAN_SERVERWARNINGThe plugin declares api-version for a newer Minecraft/Paper API than this server exposes.
DUPLICATE_PLUGIN_NAMECRITICALMore than one jar declares the same plugin name - the server loads one and rejects the other (typically an old version left behind after an update).
MISSING_HARD_DEPENDENCYCRITICALA depend: entry isn't installed (and isn't provided by another plugin) - this plugin will fail to enable.
MISSING_SOFT_DEPENDENCYINFOA softdepend: entry isn't installed - optional features will just be disabled.
CIRCULAR_DEPENDENCYCRITICALPlugins depend on each other in a circle through depend: - none of them can load.
SHADED_LIBRARY_COLLISIONWARNINGTwo or more plugins bundle the same unrelocated library. Usually harmless, occasionally a source of confusing version-mismatch bugs.
DUPLICATE_NATIVE_LIBRARYINFOMultiple plugins bundle their own copy of the same native binary.
SQLITE_JNI_RELOCATEDCRITICALThis jar's SQLite JDBC driver was shaded with its org.sqlite package renamed, which breaks the native JNI binding at runtime (only matters if the plugin uses SQLite).
UPDATE_AVAILABLEINFOModrinth has a newer release of this exact plugin jar (only with integrations.plugin-updates.enabled: true).
SQLITE_DRIVER_MISSINGWARNINGThis jar contains a native SQLite library but not the driver class it belongs to (renamed or removed, for example by an obfuscator).
BUNDLED_SERVER_APIWARNINGThe jar contains its own copy of the Bukkit API classes - almost always a shading mistake.
COMMAND_COLLISIONWARNINGTwo plugins declare the same command name or alias; only one will own the bare command.
PLUGIN_NOT_LOADEDWARNINGThe jar is in plugins/ but the running server has no plugin with that name, and nothing else explains it. Either it failed to load (see the startup log) or it was added after startup.
PLUGIN_NOT_ENABLEDWARNINGThe server loaded the plugin but it is not enabled (it failed while enabling).
PLUGIN_VERSION_MISMATCHINFOThe jar on disk has a different version than the running plugin - the update applies after a restart.