Direct answer
Start with logs/latest.log and search from the beginning of the failed startup for ERROR, Exception, the plugin name, or the first clear failure message. The last line of a large stack trace is not always the root cause.
Where Paper stores logs
Paper keeps the current log at logs/latest.log and older logs in the same directory as compressed files. When asking for help, share the relevant log through a safe paste service rather than screenshots of a few console lines.
Common messages and what they usually mean
| Message pattern | Likely direction |
|---|---|
UnsupportedClassVersionError | The Java runtime is older than the JAR expects |
UnknownDependencyException | A plugin dependency is missing |
Failed to bind to port | Port already in use or server-ip is wrong |
| World saved with newer version | You are trying to load newer world data in older software |
| Plugin name appears in stack trace | Check that plugin's version/config/dependencies |
Read the first meaningful cause
Java exceptions often contain many lines showing where the failure travelled through the program. Look for a Caused by: section or an early message that names the invalid file, missing dependency, Java version, or plugin.
Isolate plugin problems
If the server starts without plugins but fails with them, add plugins back in controlled groups or use a binary-search approach. Do not remove a library plugin without remembering that dependent plugins will fail too.
Never post secrets from logs
Review logs before sharing them. Remove passwords, RCON secrets, database credentials, private tokens, or personal information if a plugin printed them. A full log is useful only when it is safe to share.
- Start with the first ERROR/Exception line after a restart, not merely the last stack-trace line; the cause is often reported before cascading plugin failures.
- Correlate timestamps across proxy, backend and plugin logs. A client disconnect reason alone rarely identifies whether authentication, networking or plugin code failed.
- When sharing excerpts, redact IP addresses, tokens, database passwords, UUIDs where unnecessary and other identifying player data. Keep the original full log privately for investigation.
Official references
These references were checked while preparing this guide. Version-specific behavior can change, so use the project documentation for your exact release when a detail differs.
Related guides
Help us improve this article
Tell us what is missing, unclear, outdated, or incorrect. You can also suggest something we should add.