mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 15:00:13 +01:00
Update paperweight & build config for Spigot changes
This commit is contained in:
parent
7dd61c6238
commit
a637254968
12 changed files with 44 additions and 5607 deletions
7
.giattributes
Normal file
7
.giattributes
Normal file
|
@ -0,0 +1,7 @@
|
|||
* text=auto
|
||||
|
||||
*.sh text eol=lf
|
||||
gradlew text eol=lf
|
||||
*.bat text eol=crlf
|
||||
|
||||
*.jar binary
|
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -1,3 +1,6 @@
|
|||
.gradle/
|
||||
build/
|
||||
|
||||
# Eclipse stuff
|
||||
.classpath
|
||||
.project
|
||||
|
|
|
@ -3,22 +3,20 @@
|
|||
# Hopper.getLevel()
|
||||
# Entity.getCommandSenderWorld()
|
||||
# to getWorld(), which confuses our ability to map this method properly. This patch disambiguates it
|
||||
net/minecraft/world/level/block/entity/IHopper v ()Lnet/minecraft/world/level/World; getLevel
|
||||
net/minecraft/world/entity/vehicle/EntityMinecartHopper v ()Lnet/minecraft/world/level/World; getLevel
|
||||
net/minecraft/world/item/trading/IMerchant eV ()Lnet/minecraft/world/level/World; getLevel
|
||||
net/minecraft/world/entity/npc/EntityVillagerAbstract eV ()Lnet/minecraft/world/level/World; getLevel
|
||||
net/minecraft/world/item/trading/IMerchant fD ()Lnet/minecraft/world/level/World; getLevel
|
||||
net/minecraft/world/entity/npc/EntityVillagerAbstract fD ()Lnet/minecraft/world/level/World; getLevel
|
||||
|
||||
# CraftBukkit mappings sometimes have mappings for child classes and not parent classes
|
||||
# We handle this fine for deobf but this breaks reobf. These Patches fix those cases
|
||||
|
||||
# BossBattle -> BossBattleServer
|
||||
net/minecraft/world/BossBattle a (F)V setProgress
|
||||
net/minecraft/world/BossBattle c (Z)Lnet/minecraft/world/BossBattle; setCreateFog
|
||||
net/minecraft/world/BossBattle a (Z)Lnet/minecraft/world/BossBattle; setDarkenSky
|
||||
net/minecraft/world/BossBattle b (Z)Lnet/minecraft/world/BossBattle; setPlayMusic
|
||||
# net/minecraft/world/BossBattle a (F)V setProgress
|
||||
# net/minecraft/world/BossBattle c (Z)Lnet/minecraft/world/BossBattle; setCreateFog
|
||||
# net/minecraft/world/BossBattle a (Z)Lnet/minecraft/world/BossBattle; setDarkenSky
|
||||
# net/minecraft/world/BossBattle b (Z)Lnet/minecraft/world/BossBattle; setPlayMusic
|
||||
|
||||
# IChunkProvider -> ChunkProviderServer
|
||||
net/minecraft/world/level/chunk/IChunkProvider b (II)Z isLoaded
|
||||
# net/minecraft/world/level/chunk/IChunkProvider b (II)Z isLoaded
|
||||
|
||||
# BehaviorWorkComposter -> BehaviorWork
|
||||
net/minecraft/world/entity/ai/behavior/BehaviorWorkComposter a (Lnet/minecraft/server/level/WorldServer;Lnet/minecraft/world/entity/npc/EntityVillager;)V doWork
|
||||
# net/minecraft/world/entity/ai/behavior/BehaviorWorkComposter a (Lnet/minecraft/server/level/WorldServer;Lnet/minecraft/world/entity/npc/EntityVillager;)V doWork
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
--- a/net/minecraft/world/entity/ai/behavior/BehaviorWorkComposter.patch
|
||||
+++ b/net/minecraft/world/entity/ai/behavior/BehaviorWorkComposter.patch
|
||||
@@ -0,0 +0,0 @@
|
||||
--- a/net/minecraft/world/entity/ai/behavior/BehaviorWorkComposter.java
|
||||
+++ b/net/minecraft/world/entity/ai/behavior/BehaviorWorkComposter.java
|
||||
-@@ -0,0 +0,0 @@
|
||||
- public BehaviorWorkComposter() {}
|
||||
-
|
||||
- @Override
|
||||
-- protected void a(WorldServer worldserver, EntityVillager entityvillager) {
|
||||
-+ protected void doWork(WorldServer worldserver, EntityVillager entityvillager) { // PAIL
|
||||
- Optional<GlobalPos> optional = entityvillager.getBehaviorController().getMemory(MemoryModuleType.JOB_SITE);
|
||||
-
|
||||
- if (optional.isPresent()) {
|
||||
@@ -0,0 +0,0 @@
|
||||
BlockPosition blockposition = globalpos.getBlockPosition();
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
--- a/net/minecraft/server/level/ChunkProviderServer.patch
|
||||
+++ b/net/minecraft/server/level/ChunkProviderServer.patch
|
||||
@@ -0,0 +0,0 @@
|
||||
+ return playerchunk == null || playerchunk.oldTicketLevel > i; // CraftBukkit using oldTicketLevel for isLoaded checks
|
||||
}
|
||||
|
||||
- public boolean isLoaded(int i, int j) {
|
||||
-@@ -0,0 +0,0 @@
|
||||
+ @Override
|
||||
+@@ -0,0 +0,0 @@
|
||||
public boolean a(Entity entity) {
|
||||
long i = ChunkCoordIntPair.pair(MathHelper.floor(entity.locX()) >> 4, MathHelper.floor(entity.locZ()) >> 4);
|
||||
|
||||
@@ -0,0 +0,0 @@
|
||||
}
|
||||
|
||||
private boolean a(long i, Function<PlayerChunk, CompletableFuture<Either<Chunk, PlayerChunk.Failure>>> function) {
|
||||
-@@ -0,0 +0,0 @@
|
||||
+@@ -0,0 +0,0 @@
|
||||
|
||||
@Override
|
||||
public void close() throws IOException {
|
||||
@@ -0,0 +0,0 @@
|
||||
public void tick(BooleanSupplier booleansupplier) {
|
||||
this.world.getMethodProfiler().enter("purge");
|
||||
this.chunkMapDistance.purgeTickets();
|
||||
-@@ -0,0 +0,0 @@
|
||||
+@@ -0,0 +0,0 @@
|
||||
this.lastTickTime = i;
|
||||
WorldData worlddata = this.world.getWorldData();
|
||||
boolean flag = this.world.isDebugWorld();
|
||||
@@ -0,0 +0,0 @@
|
||||
|
||||
this.world.getMethodProfiler().enter("naturalSpawnCount");
|
||||
int l = this.chunkMapDistance.b();
|
||||
-@@ -0,0 +0,0 @@
|
||||
+@@ -0,0 +0,0 @@
|
||||
|
||||
@Override
|
||||
protected boolean executeNext() {
|
|
@ -10,41 +10,41 @@ c net/minecraft/world/level/World net/minecraft/world/level/Level
|
|||
|
||||
# CraftBukkit adds the server field, clashes with a Mojang field
|
||||
c net/minecraft/server/network/PlayerConnection net/minecraft/server/network/ServerGamePacketListenerImpl
|
||||
f Lorg/bukkit/craftbukkit/CraftServer; server craftServer
|
||||
m ()Lorg/bukkit/craftbukkit/entity/CraftPlayer; getPlayer getCraftPlayer
|
||||
|
||||
# CraftBukkit adds the player field, clashes with a Mojang field
|
||||
c net/minecraft/world/inventory/ContainerWorkbench net/minecraft/world/inventory/CraftingMenu
|
||||
f Lnet/minecraft/world/entity/player/PlayerInventory; player playerInventory
|
||||
#c net/minecraft/world/inventory/ContainerWorkbench net/minecraft/world/inventory/CraftingMenu
|
||||
# f Lnet/minecraft/world/entity/player/PlayerInventory; player playerInventory
|
||||
|
||||
# CraftBukkit adds the getType() method, clashes with a Mojang method
|
||||
c net/minecraft/world/entity/EntityAreaEffectCloud net/minecraft/world/entity/AreaEffectCloud
|
||||
m ()Ljava/lang/String; getType getTypeCb
|
||||
m ()Ljava/lang/String; getType getPotionType
|
||||
|
||||
# CraftBukkit adds the getType() method, clashes with a Mojang method
|
||||
c net/minecraft/world/entity/projectile/EntityTippedArrow net/minecraft/world/entity/projectile/Arrow
|
||||
m ()Ljava/lang/String; getType getTypeCb
|
||||
m ()Ljava/lang/String; getType getPotionType
|
||||
|
||||
# CraftBukkit adds the getLevel() method, clashes with original method
|
||||
c net/minecraft/world/level/block/entity/TileEntityBeacon net/minecraft/world/level/block/entity/BeaconBlockEntity
|
||||
m ()I getLevel getLevelCb
|
||||
#c net/minecraft/world/level/block/entity/TileEntityBeacon net/minecraft/world/level/block/entity/BeaconBlockEntity
|
||||
# m ()I getLevel getLevelCb
|
||||
|
||||
# CraftBukkit adds the getLootTable() method, clashes with original method
|
||||
c net/minecraft/world/entity/EntityInsentient net/minecraft/world/entity/Mob
|
||||
m ()Lnet/minecraft/resources/MinecraftKey; getLootTable getLootTableCb
|
||||
#c net/minecraft/world/entity/EntityInsentient net/minecraft/world/entity/Mob
|
||||
# m ()Lnet/minecraft/resources/MinecraftKey; getLootTable getLootTableCb
|
||||
|
||||
# CraftBukkit adds the canCollideWith() method, clashes with original method
|
||||
c net/minecraft/world/entity/Entity net/minecraft/world/entity/Entity
|
||||
m (Lnet/minecraft/world/entity/Entity;)Z canCollideWith canCollideWithCb
|
||||
#c net/minecraft/world/entity/Entity net/minecraft/world/entity/Entity
|
||||
# m (Lnet/minecraft/world/entity/Entity;)Z canCollideWith canCollideWithCb
|
||||
|
||||
# CraftBukkit adds a new `a` method which allows passing the Entity parameter
|
||||
# It uses `a` to match the original method (with just 1 param), so this patch makes them match
|
||||
c net/minecraft/server/level/WorldServer net/minecraft/server/level/ServerLevel
|
||||
m (Lnet/minecraft/server/level/WorldServer;Lnet/minecraft/world/entity/Entity;)V a makeObsidianPlatform
|
||||
#c net/minecraft/server/level/WorldServer net/minecraft/server/level/ServerLevel
|
||||
# m (Lnet/minecraft/server/level/WorldServer;Lnet/minecraft/world/entity/Entity;)V a makeObsidianPlatform
|
||||
|
||||
# CraftBukkit adds `getMinecraftWorld()` to `GeneratorAccess`, which matches `WorldAccess.getMinecraftWorld()`
|
||||
# But that method in `WorldAccess` is called `getLevel()` in Mojang mappings
|
||||
c net/minecraft/world/level/GeneratorAccess net/minecraft/world/level/LevelAccessor
|
||||
m ()Lnet/minecraft/server/level/WorldServer; getMinecraftWorld getLevel
|
||||
#c net/minecraft/world/level/GeneratorAccess net/minecraft/world/level/LevelAccessor
|
||||
# m ()Lnet/minecraft/server/level/WorldServer; getMinecraftWorld getLevel
|
||||
|
||||
# SpecialSource2 automatically maps methods to the name of synthetic methods that point to it in an attempt to
|
||||
# normalize method names with what is expected by the super class. This is _extremely_ stupid and flawed however
|
||||
|
@ -68,9 +68,9 @@ c net/minecraft/world/level/GeneratorAccess net/minecraft/world/level/LevelAcces
|
|||
# This is allowed because the synthetic method for serialize() has a different descriptor, using Object as the second
|
||||
# parameter. This breaks when SpecialSource2 does it's "magic" of course. This patch manually fixes this case by adding
|
||||
# both correct mappings
|
||||
c net/minecraft/world/level/storage/loot/entries/LootEntryAbstract$Serializer net/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Serializer
|
||||
m (Lcom/google/gson/JsonObject;Lnet/minecraft/world/level/storage/loot/entries/LootEntryAbstract;Lcom/google/gson/JsonSerializationContext;)V a serialize
|
||||
p 0 json
|
||||
p 1 entry
|
||||
p 2 context
|
||||
m (Lcom/google/gson/JsonObject;Lnet/minecraft/world/level/storage/loot/entries/LootEntryAbstract;Lcom/google/gson/JsonSerializationContext;)V serializeType serializeCustom
|
||||
#c net/minecraft/world/level/storage/loot/entries/LootEntryAbstract$Serializer net/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Serializer
|
||||
# m (Lcom/google/gson/JsonObject;Lnet/minecraft/world/level/storage/loot/entries/LootEntryAbstract;Lcom/google/gson/JsonSerializationContext;)V a serialize
|
||||
# p 0 json
|
||||
# p 1 entry
|
||||
# p 2 context
|
||||
# m (Lcom/google/gson/JsonObject;Lnet/minecraft/world/level/storage/loot/entries/LootEntryAbstract;Lcom/google/gson/JsonSerializationContext;)V serializeType serializeCustom
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
plugins {
|
||||
java
|
||||
id("com.github.johnrengelman.shadow") version "7.0.0" apply false
|
||||
id("io.papermc.paperweight") version "1.0.0-SNAPSHOT"
|
||||
id("io.papermc.paperweight.core") version "1.0.0-SNAPSHOT"
|
||||
}
|
||||
|
||||
group = "com.destroystokyo.paper"
|
||||
|
@ -15,7 +15,7 @@ allprojects {
|
|||
|
||||
java {
|
||||
toolchain {
|
||||
languageVersion.set(JavaLanguageVersion.of(11))
|
||||
languageVersion.set(JavaLanguageVersion.of(16))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -62,7 +62,7 @@ repositories {
|
|||
}
|
||||
|
||||
dependencies {
|
||||
paramMappings("org.quiltmc:yarn:1.16.5+build.6:mergedv2")
|
||||
paramMappings("org.quiltmc:yarn:1.17+build.2:mergedv2")
|
||||
remapper("org.quiltmc:tiny-remapper:0.3.2:fat@jar")
|
||||
decompiler("net.minecraftforge:forgeflower:1.5.498.5@jar")
|
||||
paperclip("io.papermc:paperclip:2.0.0-SNAPSHOT@jar")
|
||||
|
@ -77,7 +77,5 @@ paperweight {
|
|||
mappingsPatch.set(file("build-data/mappings-patch.tiny"))
|
||||
|
||||
additionalSpigotMemberMappings.set(file("build-data/additional-spigot-member-mappings.csrg"))
|
||||
|
||||
craftBukkitPatchPatchesDir.set(file("build-data/craftbukkit-patch-patches"))
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,3 +1,3 @@
|
|||
mcVersion = 1.16
|
||||
mcVersion = 1.17
|
||||
projectVersion = 1.17-R0.1-SNAPSHOT
|
||||
packageVersion = 1_17_R1
|
||||
|
|
258
paper
258
paper
|
@ -1,258 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# resolve shell-specifics
|
||||
case "$(echo "$SHELL" | sed -E 's|/usr(/local)?||g')" in
|
||||
"/bin/zsh")
|
||||
RCPATH="$HOME/.zshrc"
|
||||
SOURCE="${BASH_SOURCE[0]:-${(%):-%N}}"
|
||||
;;
|
||||
*)
|
||||
RCPATH="$HOME/.bashrc"
|
||||
if [[ -f "$HOME/.bash_aliases" ]]; then
|
||||
RCPATH="$HOME/.bash_aliases"
|
||||
fi
|
||||
SOURCE="${BASH_SOURCE[0]}"
|
||||
;;
|
||||
esac
|
||||
|
||||
# get base dir regardless of execution location
|
||||
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
|
||||
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
||||
SOURCE="$(readlink "$SOURCE")"
|
||||
[[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
|
||||
done
|
||||
SOURCE=$([[ "$SOURCE" = /* ]] && echo "$SOURCE" || echo "$PWD/${SOURCE#./}")
|
||||
basedir=$(dirname "$SOURCE")
|
||||
gitcmd="git -c commit.gpgsign=false"
|
||||
|
||||
source "$basedir/scripts/functions.sh"
|
||||
|
||||
"$basedir"/scripts/requireDeps.sh || exit 1
|
||||
|
||||
failed=0
|
||||
case "$1" in
|
||||
"rb" | "rbp" | "rebuild")
|
||||
(
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/rebuildPatches.sh "$basedir" $2 || exit 1
|
||||
) || failed=1
|
||||
;;
|
||||
"rbf" | "rbfull")
|
||||
(
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/rebuildPatches.sh "$basedir" "nofilter" || exit 1
|
||||
) || failed=1
|
||||
;;
|
||||
"p" | "patch")
|
||||
(
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/build.sh "$basedir" || exit 1
|
||||
) || failed=1
|
||||
;;
|
||||
"j" | "jar")
|
||||
(
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/build.sh "$basedir" "--jar" || exit 1
|
||||
) || failed=1
|
||||
;;
|
||||
"b" | "build")
|
||||
(
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/build.sh "$basedir" || exit 1
|
||||
(cd Paper-API ; mvn clean install) || exit 1
|
||||
(cd Paper-MojangAPI ; mvn clean install) || exit 1
|
||||
(cd Paper-Server ; mvn clean package) || exit 1
|
||||
echo "Paper jar successfully built"
|
||||
ls -la Paper-Server/target/paper*.jar
|
||||
) || failed=1
|
||||
;;
|
||||
"i" | "install")
|
||||
(
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/build.sh "$basedir" || exit 1
|
||||
mvn clean install || exit 1
|
||||
echo "Paper jar successfully built and installed to local repo"
|
||||
) || failed=1
|
||||
;;
|
||||
"pc" | "paperclip")
|
||||
(
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/paperclip.sh "$basedir" || exit 1
|
||||
) || failed=1
|
||||
;;
|
||||
"make")
|
||||
(
|
||||
if [[ "$2" = "bacon" ]] ; then
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/build.sh "$basedir" "--jar"
|
||||
fi
|
||||
)
|
||||
;;
|
||||
"m" | "mcdev")
|
||||
(
|
||||
set -e
|
||||
cd "$basedir"
|
||||
scripts/makemcdevsrc.sh "$basedir"
|
||||
)
|
||||
;;
|
||||
"t" | "test" | "testserver")
|
||||
(
|
||||
cd "$basedir"
|
||||
shift
|
||||
scripts/testServer.sh "$basedir" "$@"
|
||||
)
|
||||
;;
|
||||
"td" | "testdir")
|
||||
cd "${PAPER_TEST_DIR:-$basedir/work/test-server}"
|
||||
;;
|
||||
"u" | "up" | "upstream")
|
||||
(
|
||||
cd "$basedir"
|
||||
scripts/upstreamMerge.sh "$basedir" "$2"
|
||||
)
|
||||
;;
|
||||
"cu" | "commitup" | "commitupstream" | "upc" | "upcommit" | "upstreamcommit")
|
||||
(
|
||||
cd "$basedir"
|
||||
shift
|
||||
scripts/upstreamCommit.sh "$@"
|
||||
)
|
||||
;;
|
||||
"r" | "root")
|
||||
cd "$basedir"
|
||||
;;
|
||||
"a" | "api")
|
||||
cd "$basedir/Paper-API"
|
||||
;;
|
||||
"s" | "server")
|
||||
cd "$basedir/Paper-Server"
|
||||
;;
|
||||
"c" | "clean")
|
||||
rm -rf Paper-API
|
||||
rm -rf Paper-Server
|
||||
rm -rf work
|
||||
echo "Cleaned build files"
|
||||
;;
|
||||
"con" | "continue")
|
||||
if [ -d ".git/rebase-apply" ]; then
|
||||
git -c commit.gpgsign=false am --continue
|
||||
elif [ -d ".git/rebase-merge" ]; then
|
||||
git -c commit.gpgsign=false rebase --continue
|
||||
fi
|
||||
;;
|
||||
"e" | "edit")
|
||||
case "$2" in
|
||||
"s" | "server")
|
||||
mkdir -p "$basedir/work/Temp"
|
||||
echo "$basedir/Paper-Server" > "$basedir/work/Temp/PAPER_LAST_EDIT"
|
||||
cd "$basedir/Paper-Server"
|
||||
(
|
||||
set -e
|
||||
|
||||
paperstash
|
||||
$gitcmd rebase -i upstream/upstream
|
||||
paperunstash
|
||||
)
|
||||
;;
|
||||
"a" | "api")
|
||||
mkdir -p "$basedir/work/Temp"
|
||||
echo "$basedir/Paper-API" > "$basedir/work/Temp/PAPER_LAST_EDIT"
|
||||
cd "$basedir/Paper-API"
|
||||
(
|
||||
set -e
|
||||
|
||||
paperstash
|
||||
$gitcmd rebase -i upstream/upstream
|
||||
paperunstash
|
||||
)
|
||||
;;
|
||||
"c" | "continue")
|
||||
cd "$( < "$basedir/work/Temp/PAPER_LAST_EDIT")"
|
||||
rm -f "$basedir/work/Temp/PAPER_LAST_EDIT"
|
||||
(
|
||||
set -e
|
||||
|
||||
$gitcmd add .
|
||||
$gitcmd commit --amend
|
||||
$gitcmd rebase --continue
|
||||
|
||||
cd "$basedir"
|
||||
scripts/rebuildPatches.sh "$basedir"
|
||||
)
|
||||
;;
|
||||
*)
|
||||
echo "You must edit either the api or server."
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
"setup")
|
||||
if [[ -f "$RCPATH" ]] ; then
|
||||
NAME="paper"
|
||||
if [[ ! -z "${2+x}" ]] ; then
|
||||
NAME="$2"
|
||||
fi
|
||||
(grep "alias $NAME=" "$RCPATH" > /dev/null) && (sed -i "s|alias $NAME=.*|alias $NAME='. $SOURCE'|g" "$RCPATH") || (echo "alias $NAME='. $SOURCE'" >> "$RCPATH")
|
||||
alias "$NAME=. $SOURCE"
|
||||
echo "You can now just type '$NAME' at any time to access the paper tool."
|
||||
else
|
||||
echo "We were unable to setup the paper build tool alias: $RCPATH is missing"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "PaperMC build tool command. This provides a variety of commands to build and manage the PaperMC build"
|
||||
echo "environment. For all of the functionality of this command to be available, you must first run the"
|
||||
echo "'setup' command. View below for details. For essential building and patching, you do not need to do the setup."
|
||||
echo ""
|
||||
echo " Normal commands:"
|
||||
echo " * rb, rebuild | Rebuild patches, can be called from anywhere."
|
||||
echo " * p, patch | Apply all patches to the project without building it. Can be run from anywhere."
|
||||
echo " * j, jar | Apply all patches and build the project, paperclip.jar will be output. Can be run from anywhere."
|
||||
echo " * i, install | Build and install paper into the local repo. Can be run from anywhere."
|
||||
echo " * m, mcdev | Setup decompiled sources for non-modified NMS files to be imported into an IDE. Can be run from anywhere."
|
||||
echo " * u, up, upstream | Updates the submodules used by Paper to their latest upstream versions."
|
||||
echo " * upc, upstreamcommit | Creates the correctly-formatted upstream commit after updating upstream."
|
||||
echo " * c, clean | Removes all generated files, Paper-API, Paper-Server, and work."
|
||||
echo " * t, testserver | Run the test server with the set of plugins Paper uses as a basis for server tests."
|
||||
echo " * con, continue | Shortcut command for running git am --continue, or git rebase --continue."
|
||||
echo ""
|
||||
echo " These commands require the setup command before use:"
|
||||
echo " * r, root | Change directory to the root of the project."
|
||||
echo " * a. api | Move to the Paper-API directory."
|
||||
echo " * s, server | Move to the Paper-Server directory."
|
||||
echo " * td, testdirectory | Move to the test-server directory."
|
||||
echo " * e, edit | Use to edit a specific patch, give it the argument \"server\" or \"api\""
|
||||
echo " | respectively to edit the correct project. Use the argument \"continue\" after"
|
||||
echo " | the changes have been made to finish and rebuild patches. Can be called from anywhere."
|
||||
echo ""
|
||||
echo " * setup | Add an alias to $RCPATH to allow full functionality of this script. Run as:"
|
||||
echo " | . ./paper setup"
|
||||
echo " | After you run this command you'll be able to just run 'paper' from anywhere."
|
||||
echo " | The default name for the resulting alias is 'paper', you can give an argument to override"
|
||||
echo " | this default, such as:"
|
||||
echo " | . ./paper setup example"
|
||||
echo " | Which will allow you to run 'example' instead."
|
||||
;;
|
||||
esac
|
||||
|
||||
unset RCPATH
|
||||
unset SOURCE
|
||||
unset basedir
|
||||
unset -f color
|
||||
unset -f colorend
|
||||
unset -f paperstash
|
||||
unset -f paperunstash
|
||||
if [[ "$failed" == "1" ]]; then
|
||||
unset failed
|
||||
false
|
||||
else
|
||||
unset failed
|
||||
true
|
||||
fi
|
55
pom.xml
55
pom.xml
|
@ -1,55 +0,0 @@
|
|||
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<!-- Avoid making changes to this file, it has to be deployed manually -->
|
||||
<groupId>com.destroystokyo.paper</groupId>
|
||||
<artifactId>paper-parent</artifactId>
|
||||
<version>dev-SNAPSHOT</version>
|
||||
<packaging>pom</packaging>
|
||||
|
||||
<name>Paper-Parent</name>
|
||||
<description>Parent project for all Paper modules.</description>
|
||||
<url>https://github.com/PaperMC/Paper</url>
|
||||
|
||||
<modules>
|
||||
<module>Paper-API</module>
|
||||
<module>Paper-MojangAPI</module>
|
||||
<module>Paper-Server</module>
|
||||
</modules>
|
||||
|
||||
<build>
|
||||
<defaultGoal>clean install</defaultGoal>
|
||||
</build>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>md_5-releases</id>
|
||||
<url>https://repo.md-5.net/content/repositories/releases/</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>aikar</id>
|
||||
<url>https://repo.aikar.co/content/groups/aikar/</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>destroystokyo-repo</id>
|
||||
<url>https://papermc.io/repo/repository/maven-public/</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>papermc-releases</id>
|
||||
<url>https://papermc.io/repo/repository/maven-releases/</url>
|
||||
</repository>
|
||||
<snapshotRepository>
|
||||
<id>papermc-snapshots</id>
|
||||
<url>https://papermc.io/repo/repository/maven-snapshots/</url>
|
||||
</snapshotRepository>
|
||||
</distributionManagement>
|
||||
</project>
|
|
@ -2,10 +2,9 @@ pluginManagement {
|
|||
repositories {
|
||||
gradlePluginPortal()
|
||||
maven("https://wav.jfrog.io/artifactory/repo/")
|
||||
mavenLocal()
|
||||
}
|
||||
}
|
||||
|
||||
rootProject.name = "Paper"
|
||||
|
||||
include("Paper-API", "Paper-Server", "Paper-MojangAPI")
|
||||
include("Paper-API", "Paper-Server")
|
||||
|
|
Loading…
Reference in a new issue