mirror of
https://github.com/AtlasMediaGroup/Scissors.git
synced 2024-11-14 19:34:54 -05:00
1.7 KiB
1.7 KiB
ForkTest - A Paper fork, using paperweight
This is an example project, showcasing how to setup a fork of paper (or well, any project), using paperweight.
The interesting part of this is in the build gradle
paperweight {
serverProject.set(project(":ForkTest-Server"))
usePaperUpstream(providers.gradleProperty("paperRef")) { // specified in gradle.properties
withPaperPatcher {
apiPatchDir.set(layout.projectDirectory.dir("patches/api"))
apiOutputDir.set(layout.projectDirectory.dir("ForkTest-API"))
serverPatchDir.set(layout.projectDirectory.dir("patches/server"))
serverOutputDir.set(layout.projectDirectory.dir("ForkTest-Server"))
}
}
}
Tasks
Paperweight tasks
-----------------
applyPatches
cleanCache - Delete the project setup cache and task outputs.
patchPaperApi
patchPaperServer
rebuildPaperApi
rebuildPaperServer
rebuildPatches
runDev - Spin up a non-shaded non-remapped test server
runShadow - Spin up a test server from the shadowJar archiveFile
Branches
Each branch of this project represents an example:
main
is the standard examplesubmodules
shows how paperweight can be applied on a fork using the more traditional git submodule systemmojangapi
shows how a fork could patch arbitrary non-git directories (such asPaper-MojangAPI
)submodules-mojang
shows the same asmojangapi
, but on the git submodules setup fromsubmodules