Guide
How to make a Minecraft plugin (with or without coding)
There are two ways: write it by hand in Java with the Spigot or Paper API, or describe it in plain words and let an AI generator write, compile and test it. Both are explained below.
What a Minecraft plugin is
A plugin is a .jar file that a Minecraft server loads from its plugins/ folder. It adds commands, game rules, economies, minigames or anything else, on the server only: players join with the normal game, no mods needed.
Plugins are written in Java (or Kotlin) against the server API: Spigot and Paper for game servers, BungeeCord or Velocity for proxies. A plugin also needs a plugin.yml that tells the server its name, main class, commands and permissions.
The fast way: describe it, let AI build it
This is how Codexe works. You do not need to know Java; if you do, every file is there to read and change. Creating, compiling and testing are free on the free plan (50,000 tokens refilled every 24 hours); downloading the .jar needs a plan or a download pack.
- Choose the server software and version. Plugins run on Bukkit-based servers: Spigot, Paper or Folia (BungeeCord and Velocity for proxies). Pick the Minecraft version your server runs, from 1.8 to 26.x.
- Describe what the plugin does. Write the commands, permissions, what happens in game and what should be configurable. Example: "/sethome, /home and /delhome, max 3 homes per player, 3-second warmup, messages in config.yml".
- Let Codexe write and compile it. Codexe writes the Java classes, plugin.yml, config.yml and pom.xml, runs a real build and fixes compile errors before calling the project Ready.
- Test it on a real server. Press Try it now to join a private Minecraft server with the plugin installed. Codexe's test players run every command and check what you asked for.
- Download and install the .jar. Download the built .jar, put it in your server's plugins/ folder and restart the server. Configuration files appear in plugins/
/.
The manual way: Java, Maven and the Spigot or Paper API
It takes longer to learn but gives full control. Codexe produces the same kind of project, so you can start from a generated plugin and continue by hand.
- Install a JDK (Java 21 for 1.20.5 to 1.21.x, Java 25 for 26.x) and an IDE such as IntelliJ IDEA.
- Create a Maven or Gradle project and add the
paper-apiorspigot-apidependency for your version, withprovidedscope. - Write a main class that extends
JavaPlugin, withonEnable()andonDisable(). - Add
plugin.ymlinsrc/main/resourceswithname,version,main,api-versionand your commands. - Register commands with
getCommand("name").setExecutor(...)and listeners withgetServer().getPluginManager().registerEvents(...). - Build with
mvn package, copy the .jar fromtarget/into a test server'splugins/folder and restart.
Common problems
- The plugin does not load: the
mainin plugin.yml must match the full class name, and the Java version the plugin was built for must not be newer than the server's. - "Unsupported API version":
api-versionin plugin.yml must match your server (for example1.21or26.2). - A command does nothing: it must be listed in plugin.yml and have an executor registered in
onEnable().
Describe your plugin and try it on a real server in a few minutes.
Make a plugin now