Datei suchen
Jason Penilla 4858b03388
Update actions
2022-12-13 11:19:16 -07:00
.github/workflows Update actions 2022-12-13 11:19:16 -07:00
gradle/wrapper Update gradle wrapper 2022-11-10 10:54:29 -07:00
src/main/java/io/papermc/paperweight/testplugin Update gradle plugins and dev bundle 2022-12-13 11:18:29 -07:00
.editorconfig Initial commit 2021-07-08 05:30:01 -07:00
.gitignore Initial commit 2021-07-08 05:30:01 -07:00
README.md Adjust readme wording 2022-09-23 10:41:04 -07:00
build.gradle.kts Update gradle plugins and dev bundle 2022-12-13 11:18:29 -07:00
gradlew Update gradle wrapper 2022-11-10 10:54:29 -07:00
gradlew.bat Update gradle wrapper 2022-11-10 10:54:29 -07:00
settings.gradle.kts Updated paper repository endpoint (#4) 2022-05-29 20:08:54 -07:00

README.md

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 exmaple usage of shadow with paperweight-userdev.
  • The plugin-yml and run-paper Gradle plugins are both optional, however I use them in almost all my plugin projects and recommend at least trying them out. plugin-yml auto-generates your plugin.yml file from configuration in the build file, and run-paper 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.