CraftLib icon

CraftLib -----

A lightweight runtime library loader for Bukkit/Spigot/Paper plugins.



CraftLib

CraftLib is a lightweight and flexible runtime dependency loader for Bukkit plugins. It integrates with Maven repositories, handles download and classloading dynamically, and gives plugin developers an easy, powerful way to manage libraries at runtime.​

Features:
  • Load external dependencies (JARs) at runtime.
  • Support for custom Maven repositories.
  • Simple configuration via a dedicated "craftlib" section in "plugin.yml".
  • Injects dependencies directly into the plugin’s own classloader (when possible).
  • Built-in fallback that shades and loads libraries via a helper plugin if needed.
  • Future-proof with a namespaced configuration block ("craftlib").
Use Cases:
  • Reduce plugin size by loading libraries on demand.
  • Avoid bundling huge fat JARs.
  • Fetch libraries directly from GitHub, JitPack, or private Maven repos.
  • Modular plugin architectures where each plugin manages its own dependencies.
Documentation: Wiki

Notes and Compatibility:

Java 16+ requires "--add-opens java.base/java.net=ALL-UNNAMED" to enable classloader injection.
  • On older versions of Java (8–15), classloader injection works out of the box.
  • The fallback shaded plugin ("CraftLibs") is a workaround but may introduce classpath conflicts.
  • CraftLib works best when each plugin uses isolated dependencies. Avoid sharing core libraries (e.g., SLF4J, Guava) across multiple plugins.
Resource Information
Author:
----------
Total Downloads: 135
First Release: Jul 25, 2025
Last Update: Jul 25, 2025
Category: ---------------
All-Time Rating:
0 ratings
Find more info at github.com...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings