Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

PaperMC/paperweight-test-plugin

Repository files navigation

paperweight-test-plugin

jmp's test plugin for paperweight-userdev development

(also serves as an example until more thorough documentation is created)

notes (read these)

  • build.gradle.kts and settings.gradle.kts both contain important configuration.
  • paperweight-userdev automatically detects shadow and will use shadowJar as input for reobfJar. This means no extra configuration is required to use paperweight-userdev with shadow. See the shadow branch on this repository for an example usage of shadow with paperweight-userdev.
  • The run-paper Gradle plugin is optional, it integrates with paperweight and allows for launching a test server with your plugin through the runServer and runMojangMappedServer tasks.
  • Due to a gradle bug, independently applying paperweight-userdev to multiple projects in a build can result in errors. To work around this, apply paperweight-userdev to the root project with apply false (i.e., id("...") version "..." apply false in Kotlin DSL), and then when applying paperweight-userdev to subprojects don't include a version specification. A more advanced solution would involve adding paperweight-userdev as a dependency to your build logic, see reflection-remapper and the source-remap branch on this repo for examples of this.
  • The source-remap branch on this repo has a special remapPluginSources task to remap the source code in src/main/java from spigot to Mojang mappings, outputting remapped source in /src/main/mojangMappedJava. Note that this will only remap your code, not update it from a prior version. Meaning you must be using the dev bundle for the Minecraft version your source code is for when remapping.
  • paperweight-userdev doesn't provide any utilities for doing reflection. reflection-remapper is a companion library to paperweight-userdev assisting with reflection on remapped code.

Sponsor this project

Languages