#build-tooling-help

1 messages · Page 26 of 1

glass warren
#

Generally we don't want people pinging staff for this kind of stuff.

bronze cove
#

guys can someone PLEASE help me with ts

#

ive legit been trying to fix this for days by myself and have no idea what this error is trying to tell me to do

#

clean git clone of paper and just for some reason cant build it from source. its always this error

smoky violet
#

what commands are you running

bronze cove
#

i did gradlew applyPatches

smoky violet
#

tests are broken on that branch

bronze cove
#

and then i did gradlew createMojmapBundlerJar

#

which didnt work

#

so then i deleted all the gradle and build files to try again using gradlew createPaperclipBundlerJar

#

still nothing

#

soooo hella confused rn

bronze cove
smoky violet
#

it builds but tests do not pass

#

that commit was only to push a new dev bundle iirc

#

just build the one before the cherry pick of the configurate update

smoky violet
#

read the log and find out

bronze cove
smoky violet
#

you read the commit log and you find out which one came before the configurate cherry pick

bronze cove
#

ohhhh okay

#

hold on let me look

bronze cove
smoky violet
#

yeah if it builds then you're in luck and someone restored those snapshots to maven

#

but otherwise you'll need to fix the error yourself on the latest commit, that build was only to get a new dev bundle out for people to compile against, I didn't bother making it run (it's not published to downloads api)

bronze cove
#

i'll just git reset --hard to the commit

bronze cove
#

i reckon ill go to the fix inifite loop in regionfileio and see what happens

#

@smoky violet fixed.

thanks so much mate, this was doing my absolute head in

lucid mulch
#

ah so it turned out the paper task is just runServer lol

dawn mountain
#

Just passing by and I just realized that I wasted my whole time by searching for Gradle release numbers
Thank you for the information

tough pike
#

Why does diffpatch always have a problem with my rebrand patch on my server build script when literally nothing has changed around it

cold spindle
#

How do I publish the dev bundle of my fork to my local maven repository? The examples don't have a maven publication for that

lament scarab
#

-PpublishDevBundle or something to enable that as part of the publishing process or something

cold spindle
#

I already found a message suggesting that so I tried it, nothing showed up in my local repo. I looked through the paperweight source and couldn't find any mention of a publishDevBundle argument.

static urchin
#

gradle publishDevBundlePublicationToMavenLocal -PpublishDevBundle=true ought to do it

#

the "argument" there is on the paper build scripts

#

not in PW

#
paper-server/build.gradle.kts
61:if (project.providers.gradleProperty("publishDevBundle").isPresent) {
wheat glade
echo kilnBOT
wheat glade
lament scarab
#

if you update gradle you won't have the first error

#

You may need to manually modify wrapper.properties due to how gradle works

wheat glade
lament scarab
#

have you updated userdev?

wheat glade
#

i did this
distributionUrl=https://services.gradle.org/distributions/gradle-9.0.0-bin.zip

lament scarab
#

The message gave you 3 steps

#

9.0.0 isn't even the latest version of gradle

wheat glade
#

whats newest?

raven barn
#

Iirc 9.2.0

lament scarab
#

That is covered on the thing you were linked

#

I can't help you at this point

wheat glade
#

id("io.papermc.paperweight.userdev") version "2.0.0-beta.14"
or
id("io.papermc.paperweight.userdev") version "2.0.0-beta.19" ?

tender edge
#

which number is bigger

wheat glade
tender edge
wheat glade
#

Today

#

Still no Clue

#

What am i missing

#

Grandle 9.2.0

delicate cosmos
#

Grandalf reallyDamn

wheat glade
#

?

fading vapor
#

Well the first steps you generally should take is run clean task, run clear paperweight caches and invalidate IJ caches

fickle scaffold
#

Hello, I'm having issues compiling with gradle. This is the error I get:

`A problem occurred configuring root project 'GMusic'.

Could not resolve all artifacts for configuration 'classpath'.
Could not resolve io.papermc.paperweight:paperweight-userdev:2.0.0-beta.19.
Required by:
root project : > io.papermc.paperweight.userdev:io.papermc.paperweight.userdev.gradle.plugin:2.0.0-beta.19
No matching variant of io.papermc.paperweight:paperweight-userdev:2.0.0-beta.19 was found. The consumer was configured to find a library for use during runtime, compatible with Java 17, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '8.13' but:
- Variant 'javadocElements' declares a component for use during runtime, and its dependencies declared externally:
- Incompatible because this component declares documentation and the consumer needed a library
- Other compatible attributes:
- Doesn't say anything about its elements (required them packaged as a jar)
- Doesn't say anything about its target Java version (required compatibility with Java 17)
- Doesn't say anything about org.gradle.plugin.api-version (required '8.13')
- Variant 'shadowRuntimeElements' declares a library for use during runtime, compatible with Java 17, packaged as a jar, and its dependencies repackaged (shadow jar):
- Incompatible because this component declares a component, as well as attribute 'org.gradle.plugin.api-version' with value '9.0.0' and the consumer needed a component, as well as attribute 'org.gradle.plugin.api-version' with value '8.13'
- Variant 'sourcesElements' declares a component for use during runtime, and its dependencies declared externally:
- Incompatible because this component declares documentation and the consumer needed a library
`

bronze ember
#

Update gradle

fickle scaffold
#

Thanks.

waxen vine
bronze ember
#

pom?

#

make sure you are actually compiling against 25

waxen vine
#

Other plugins which don't use the shade plugin compiled w/o any issues w/ same configuration

#

In IDEA project settings JDK is also 25

#

Looks like it compiles if I remove the <minimizeJar>true</minimizeJar> line

#

But then jar is too big...

cold sparrow
#

hmmm ok so i updated to a new gradle version (9.2.0) and am now getting this error all over my build.gradle.kts, is this a kotlin issue??
Thanks)

lucid mulch
#

i dont know what causes it but my entire install is borked the same way on all my projects since some update

#

(to idea itself)

cold sparrow
#

ah i see, should i re-install idea then?

lucid mulch
#

you can try that

#

all i know is that resetting everything and cleaning caches doesnt work xD

#

didnt try a reinstall yet

#

worst case, you can revert to an older version of idea

#

before september should work

cold sparrow
lucid mulch
#

download an older version of the ide

fading vapor
#

instead of reinstalling your first steps should always be

  1. Run gradle clean task
  2. Invalidate IJ caches
fading vapor
#

interesting

lucid mulch
#

and i tried that more times than intellij intended prob lol

#

i think they just borked smth

fading vapor
#

are you on an EAP build?

lucid mulch
#

im on the latest stable

#

i even tried default settings still broken

novel knoll
#

repair IDE + refreshing gradle works plenty fine for me when it breaks

fading vapor
#

is anyone else experiencing Gradle shadow plugin's mergeServiceFiles just not doing anything?

#

should I open an issue on their repo?

bronze ember
#

try a minimal repo first

#

and I guess try without configuration cache and shit?

fading vapor
#

good idea

#

ahh it's a breaking change, you need to set the strategy to INCLUDE now, it defaults to EXCLUDE

cunning folio
#

How does one properly declare paperweight userdev in the dependencies/plugins in a multi-module project? I currently have it working, but every module has the dependency now, which means IntelliJ shows every class I look up three times (three modules). I'm thinking of declaring the dependency once in :common since every other module depends on that one, or is that not how it works?

Link to repo: https://github.com/tjalp/nexus

lament scarab
#

I mean, if you wanted to only pull it in once then you would declare it once in a module and let it pull it from there

cunning folio
#

Yeah I tried that but for some reason it didn't work. Let me try it again

#

I think I'm forgetting something. If I have the following build.gradle.kts in common, chat does not have access to the paper api

plugins {
    id("buildsrc.convention.kotlin-jvm")
    alias(libs.plugins.kotlinPluginSerialization)
    alias(libs.plugins.paperUserDevPlugin)
}

dependencies {
    implementation(libs.bundles.kotlinxEcosystem)

    paperweight.paperDevBundle(libs.versions.paperApi)
}

for reference, this is the chat build.gradle.kts

plugins {
    id("buildsrc.convention.kotlin-jvm")
}

dependencies {
    implementation(project(":common"))
}
cold sparrow
lament scarab
#

I'm guessing that the default scope of the dev bundle means that it's not exposed to other modules

cunning folio
#

How can I change the scope so that it is exposed to other modules?

lament scarab
#

er, not sure

cunning folio
#

okay I just changed the dependencies section of my build.gradle.kts of the common module to

dependencies {
    implementation(libs.bundles.kotlinxEcosystem)

    paperweight.paperDevBundle(libs.versions.paperApi)
    compileOnlyApi("io.papermc.paper:dev-bundle:${libs.versions.paperApi.get()}")
}

and now it works fine. It's scuffed as hell but whatever

cunning folio
#

okay - nevermind. It does not expose minecraft's internals this way, only bukkit's

smoky violet
#
    // Needed for mergeServiceFiles to work properly in Shadow 9+
    filesMatching("META-INF/services/**") {
      duplicatesStrategy = DuplicatesStrategy.INCLUDE
    }
#

this is a little better... but it's still cooked

#

you shouldn't have to set options that allow invalid jars with arbitrary duplicate entries to be built for service files to merge

#

Since it's a major revision idk why they didn't properly fix it

fading vapor
#

yeah I just did the above code block after checking the strategy docs page instead of the example on changes

floral whale
#

Getting this error when using paperDevBundle, anyone know why? > Expected configuration ':paperweightDevelopmentBundle' to contain exactly one file, however, it contains more than one file.

Using this: paperweight.paperDevBundle(libs.versions.paper)

and libs: ```toml
metadata.format.version = "1.1"

[versions]
paper = "1.21.8-R0.1-SNAPSHOT"

novel knoll
#

are you using paperweight in a multi-module setup?

#

userdev

floral whale
#

Nope

echo kilnBOT
floral whale
#

I've also tried userdev versions like 2.0.0-beta.18 and lower, but didn't work

novel knoll
#

might want to update gradle there

floral whale
dusk quail
#

yeah update gradle

novel knoll
#

god those error messages are so unhelpful

#

9.2.0 is latest

dusk quail
#

requires 9.0.0, latest is 9.2.0

#

can use ./gradlew wrapper --gradle-version=9.2.0 && ./gradlew wrapper to update easily

floral whale
#

Oh... didn't see this Incompatible because this component declares a component, as well as attribute 'org.gradle.plugin.api-version' with value '9.0.0'

Sorry

#

Thanks!

dusk quail
#

dw the errors arent very helpful 99% of the time

proud lava
#

Hi, when i'm trying to setup the anti-xray. The spectators also have the anti, is there a way to turn that off for spectators?

proud lava
#

oops

limber onyx
#

Does anyone know why maven is throwing error

cannot access net.kyori.adventure.text.object.PlayerHeadObjectContents
  class file for net.kyori.adventure.text.object.PlayerHeadObjectContents not found

when trying to compile plugin?

I changed from 1.21.8 to 1.21.10 (for AsyncPlayerSpawnLocationEvent), and now the project is no longer compiling.

#

the error is referring to line with Player#updateInventory()

limber onyx
delicate ledge
limber onyx
#

Don't think moving from maven to gradle is the ideal solution, but at least it works...

ornate prawn
#

So I try to use Snapshot tracking pr to avoid building Paper local but at least simply adding the repo does not work like expected.
I get a 500:

A problem occurred configuring project ':plugins:fancynpcs:implementation_1_21_11'.
> Failed to notify project evaluation listener.
   > Could not resolve all files for configuration ':plugins:fancynpcs:implementation_1_21_11:paperweightDevelopmentBundle'.
      > Could not resolve io.papermc.paper:dev-bundle:25w45a-R0.1-SNAPSHOT.
        Required by:
            project ':plugins:fancynpcs:implementation_1_21_11'
         > Could not resolve io.papermc.paper:dev-bundle:25w45a-R0.1-SNAPSHOT.
            > Unable to load Maven meta-data from https://maven-prs.papermc.io/Paper/pr13194/io/papermc/paper/dev-bundle/25w45a-R0.1-SNAPSHOT/maven-metadata.xml.
               > Could not GET 'https://maven-prs.papermc.io/Paper/pr13194/io/papermc/paper/dev-bundle/25w45a-R0.1-SNAPSHOT/maven-metadata.xml'. Received status code 500 from server: Internal Server Error

Am I missing something or am I actually supposed to not use the PR and just publish it locally (like it was said as required step)?

smoky violet
#

Failed to fetch from GitHub Packages: Internal Server Error

#

looks like you might need to build it yourself until I can figure that out

ornate prawn
#

Thanks for confirming it is not a layer 8 problem ^^

smoky violet
#

it seems like the 500 actually originates at github, my code is passing through the status and response text

smoky violet
#

very odd

smoky violet
ornate prawn
#

It works, thanks.

bronze willow
#

How would i revert a specifc commit regarding the patches, when i do it via "git revert" it fails

bronze ember
#

you need to add a patch reverting it

#

what exactly do you want to revert?

bronze willow
vivid breach
#

did anyone get this error and maybe fix it
FAILURE: Build failed with an exception.

  • What went wrong:
    A problem occurred configuring root project 'PManager'.

Expected configuration ':paperweightDevelopmentBundle' to contain exactly one file, however, it contains more than one file.

i didnt understand why this error i just follow this https://docs.papermc.io/paper/dev/userdev/

echo kilnBOT
vivid breach
#

well i am checking wrapper version and upgrading to gradle 9 if someone solved the issue vefore i'll appreciate the help

lucid mulch
#

do what this says

#

your userdev plugin is outdated

#

possibly

vivid breach
#

ok worked its gradle issue i need to use 9.x version

severe aurora
#

can i delete <profiles> ?

tender edge
#

it serves a function, if you don't need that function then you can remove it

summer summit
lament scarab
digital nimbus
#

I'm trying to apply patches in my cloned paper project, it keeps failing with Failed to apply 0/#### hunks.
It also says it missing some patch targets

[WARN] Missing patch target for net/minecraft/world/entity/ai/goal/target/DefendVillageTargetGoal.java.patch
[WARN] Missing patch target for net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java.patch
[WARN] Missing patch target for net/minecraft/world/entity/ai/goal/target/NearestAttackableTargetGoal.java.patch
[WARN] Missing patch target for net/minecraft/world/entity/ai/goal/target/OwnerHurtByTargetGoal.java.patch
[WARN] Missing patch target for net/minecraft/world/entity/ai/goal/target/OwnerHurtTargetGoal.java.patch
[WARN] Missing patch target for net/minecraft/world/entity/ai/goal/target/TargetGoal.java.patch

Its a new clone, so no left over bad configurations
I've tried with the main, dev/snapshot, and 1.21.5 branches all of which give the same errors with just different number of hunks.

smoky violet
#

you have a broken global git config

lament scarab
#

^ Don't exclude "target" in your global config file

smoky violet
#

probably shouldn't globally exclude anything if you have trouble remembering you set that when it slaps you across the face

digital nimbus
#

I don't have any global excluded files?
My global git config

filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
user.name=LRMtheBoss
user.email=<Redacted>
user.signingkey=<Redacted>
commit.gpgsign=true
tag.gpgsign=true
gpg.program=C:\Program Files (x86)\GnuPG\bin\gpg.exe
core.autocrlf=input

my non global git config for the paper directory

diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/etc/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=true
core.editor=nano.exe
pull.rebase=false
credential.helper=manager
credential.https://dev.azure.com.usehttppath=true
init.defaultbranch=master
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
user.name=LRMtheBoss
user.email=<Redacted>
user.signingkey=<Redacted>
commit.gpgsign=true
tag.gpgsign=true
gpg.program=C:\Program Files (x86)\GnuPG\bin\gpg.exe
core.autocrlf=input
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
core.symlinks=false
core.ignorecase=true
submodule.active=.
remote.origin.url=https://github.com/PaperMC/Paper.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.main.remote=origin
branch.main.merge=refs/heads/main
branch.dev/snapshot.remote=origin
branch.dev/snapshot.merge=refs/heads/dev/snapshot
branch.ver/1.21.5.remote=origin
branch.ver/1.21.5.merge=refs/heads/ver/1.21.5
lucid mulch
#

i would try deleting those git configs anyway and retrying to see if it helps

#

altho i dont see anything that would mess with paperweight at the first look

lament scarab
#

I mean the global gitignore

lucid mulch
#

he doesn't seem to have specified one as there is no excludesFile in his global config

lament scarab
#

Well, something somewhere is excluding the target folder

digital nimbus
#

So even with out specifying it, it was picking up a gitignore at c/users/(username)/.gitignore that i didn't even know was there. its a fairly new computer with a new install of windows only 3 months ago so i have no clue as to how it got there.

Anyway thank you'll for the help

bold lodge
#

Does anyone know why all of the sudden I get this error building?

Execution failed for task ':compileJava'.

Could not resolve all files for configuration ':compileClasspath'.
Could not find spark-api-0.1-20240720.200737-2.jar (me.lucko:spark-api:0.1-SNAPSHOT:20240720.200737-2).
Searched in the following locations:
https://oss.sonatype.org/content/groups/public/me/lucko/spark-api/0.1-SNAPSHOT/spark-api-0.1-20240720.200737-2.jar
Could not find spark-paper-1.10.133-20250413.112336-1.jar (me.lucko:spark-paper:1.10.133-SNAPSHOT:20250413.112336-1).
Searched in the following locations:
https://oss.sonatype.org/content/groups/public/me/lucko/spark-paper/1.10.133-SNAPSHOT/spark-paper-1.10.133-20250413.112336-1.jar

Possible solution:

proud maple
bold lodge
#

How do I exclude it?

#

I feel like that's your solution to this particular issue?

#

Also, I didn't have this issue a few days ago

#

I don't use the dev server bundle, so that should do the trick, although I don't know where can I exclude that artifact

lament scarab
#

That’s in the paper repo

#

Or at least should be

bold lodge
#

So there is an issue with the paper repo?

lament scarab
#

You're not using the paper repo

bold lodge
#

Oh, true, I'm using dev tools directly

#

So adding the paper repo should do the trick? I'll try

#

Same error after adding the paper repo

#

Should I attach my gradle build?

#

Ok, update: after changing the repositories order (which I thought didn't matter) it got actually fixed

mighty fulcrum
#

oh yeah adding the paper repo to the build.gradle instead of just the settings.gradle above the other repos did the trick

bold lodge
#

Yeah, that was the fix 👍

sick bough
#

Hi, I have paper -> purpur -> my fork.

I am having some issues updating to a new version, in this case from 1.21.4 to 1.21.8.

I changed the commit hash to a new one, but I am getting some errors when trying to apply new patches (via applyAllPatches).
What are the (gradle tasks) steps I should do to properly update it?

#
Patch \slimer-server\build.gradle.kts.patch failed:
[DEBUG] Patching: purpur-server/build.gradle.kts
[WARN]  Hunk 0: FAILURE: @@ -29,7 +29,22 @@
[WARN]  Hunk 1: FAILURE: @@ -115,10 +130,14 @@
[WARN]  Hunk 2: FAILURE: @@ -142,7 +161,7 @@
[WARN]  Hunk 3: FAILURE: @@ -216,14 +235,15 @@
[WARN]  Hunk 4: FAILURE: @@ -292,6 +312,7 @@
[WARN]  Hunk 5: FAILURE: @@ -354,3 +375,12 @@

Patch \slimer-api\build.gradle.kts.patch failed:
[DEBUG] Patching: purpur-api/build.gradle.kts
[WARN]  Hunk 0: FAILURE: @@ -104,17 +104,21 @@
[WARN]  Hunk 1: FAILURE: @@ -260,3 +264,12 @@
lucid mulch
sick bough
#

how do I apply patches fuzzily for build files?

lucid mulch
#

read the output of ./gradlew tasks, its the single file patches task

sick bough
#

seems like something got messed up after I did applyAllPatches with the new hash
I am getting errors such as:
slimer-server/build.gradle.kts:43:9: Unresolved reference: enabled
even if I remove it, I get a new issue.

#

can't even revert to a previous hash, won't let me run any tasks

lucid mulch
#

remove it

#

it will regenerate

sick bough
#

well, I reverted to previous hash, removed the files with issues, did applyAllPatches and now I am getting a new error
:proper-purpur-fork:slimer-server:setupMacheSources
Failed to apply 37 mache patches

[WARN] Patching: net/minecraft/Util.java
[WARN]  Hunk 0: FAILURE: @@ -552,7 +552,7 @@
[WARN] Patching: net/minecraft/advancements/critereon/MinMaxBounds.java
[WARN]  Hunk 0: FAILURE: @@ -119,7 +119,7 @@
[WARN]  Hunk 1: FAILURE: @@ -175,7 +175,7 @@
... etc
lucid mulch
#

run ./gradlew cleanCache clean and btw have you updated your paperweight version?

#

the latest is beta.19 iirc

sick bough
#

I did cleanCache, but not clean, let me try that.

And no, I haven't updated it yet.

lucid mulch
#

had that too

#

clean after bumping the version

faint mist
echo kilnBOT
lilac root
faint mist
alpine dagger
lilac root
lucid mulch
#

just run ./gradlew cleanCache clean

#

and it will remove all caches for you automatically

#

and the correct one too

alpine dagger
#

after cleaning this shows up when applying patches

lucid mulch
#

git config ––global core.longpaths true

alpine dagger
#

i restarted my pc, cleared cache and tried to rebuild after i did this and still came back with the same error

main mica
#

try it with the paperweight.debug system property set to true, that should give you the actual git error

alpine dagger
main mica
#

just run the task with -Dpaperweight.debug=true

lucid mulch
#

it must be enabled through git

lucid mulch
#

i was typing on mobile

#

and it messes up the signs

main mica
#

Lets verify that this is actually the issue first

#

the debug output from that should tell us that

lucid mulch
alpine dagger
#

imma attempt to run without cleaning if it runs into previous issues ill clean it and run applyPatches -Dpaperweight.debug=true

#

side question but, how long should it take and what is the main cause of slow applyPatches?

main mica
#

a few minutes, depends on disk speed mostly. Windows is generally a lot slower there due to how the file system works. Especially if you don't add it as a defender exclusion (IJ prompts you to do so usually)

alpine dagger
#

Oh. Oki that explains why its slow

#

External hard drive. 24tb.

#

Im definitely gonna move it to the ssd once we solve this

lucid mulch
#

will this ever get resolved in paperweight by providing a default one for patch apply or not

main mica
#

I mean thats just improperly set-up Git?

#

Not really anything to solve there

lucid mulch
#

as for improper git im aware as i just installed the os fresh lol

alpine dagger
#

moving it off my hard drive fixed all patching and built in 37sec so it might have been my slow hard drive

#

After trying to createMojmapBundlerJar and using the 93mb bundle jar it shows this

main mica
#

Newer paper-global config maybe?

alpine dagger
#

It never created a paper-global config in the test server folder

#

should i port my current papermc 1.21.4 configs over to see if that works?

main mica
#

the default configs really should work, would be very odd if that broke. Especially if you didn't do any patches yet

#

but looking at ServerboundPacketClassSerializer, the server is expecting 74 serverbound packet types, but it somehow got some other number. I don't really see how that could happen outside of somehow mixing two versions together. Its just using reflection to go through the vanilla packet type classes

smoky violet
modern parrot
#

Hello, I'm trying to get Hangar publishing working with Gradle 9.1.0. I followed the instructions pretty much 1:1, and I can publish successfully and see the updated release on Hangar, but the task overall fails with this error:

FAILURE: Build failed with an exception.

* What went wrong:
Configuration cache problems found in this build.

2 problems were found storing the configuration cache.
- Task `:paper:publishPluginPublicationToHangar` of type `io.papermc.hangarpublishplugin.HangarPublishTask`: cannot serialize object of type 'org.gradle.api.DefaultTask', a subtype of 'org.gradle.api.Task', as these are not supported with the configuration cache.
  See https://docs.gradle.org/9.1.0/userguide/configuration_cache_requirements.html#config_cache:requirements:task_access
- Task `:paper:publishPluginPublicationToHangar` of type `io.papermc.hangarpublishplugin.HangarPublishTask`: cannot serialize object of type 'org.gradle.api.internal.project.DefaultProject', a subtype of 'org.gradle.api.Project', as these are not supported with the configuration cache.
  See https://docs.gradle.org/9.1.0/userguide/configuration_cache_requirements.html#config_cache:requirements:disallowed_types

Is this expected with recent versions of Gradle? I know they made some build cache changes around 9.0.0, and just want to be able to get a useful success/fail output.

echo kilnBOT
smoky violet
#

mainly point 3

modern parrot
smoky violet
#

thats quite odd, I haven't run into any config caching issues with basically the same setup

#

try making a build scan

modern parrot
smoky violet
#

and what about the config cache report it links in the logs

#

See the complete report at file:///home/jtprince/Code/CoordinateOffset/build/reports/configuration-cache/34gd44n7qwuj84gbb20odg332/8zsqdw5vgt8vwbx0tttx2kohy/configuration-cache-report.html

modern parrot
brave widgetBOT
smoky violet
#

I guess open an issue with all those details at hangar-publish-plugin

#

I don't have time to troubleshoot it myself rn

modern parrot
#

Will do, thanks for looking into it and confirming it's not a simple mistake on my part.

smoky violet
#

if you need to publish just disable config caching temporarily

modern parrot
#

Yep, I'll probably set that flag in the github action for now

modern parrot
smoky violet
#

I have it enabled in multiple projects using hpp

modern parrot
#

oh got it, still puzzled what's different in my setup then

alpine dagger
#

im so confused because it should be unchanged

main mica
#

See the messages jmp replied to earlier

alpine dagger
main mica
alpine dagger
smoky violet
#

you probably shouldn't be making a fork if you still need to ask that

alpine dagger
#

I think i fixed it but i feel like im making a mistake trying to rebuild the patch.

#

i got in order from top to bottom but i never see a new patch and it seems to just undo everything i modified

lucid mulch
#

if you do file patches you have to run the fixup task first and also why the hell would you clean while trying to rebuild a patch

#

dont do that

buoyant heron
#

Hello, I have a fresh clone of Paper 1.21.10 and am trying to load it into IntelliJ. The only thing I've done after cloning my fork to my machine is run gradlew applyPatches. When I load it into IntelliJ, I get this error when it tries to load the Gradle project (see attached). Any ideas on how to fix?

#

My understanding is that Gradle 9.1 supports Java 21, so not sure why it wants me to downgrade to 20

#

Gradle and wrapper settings are as shown

buoyant heron
#

updating IntelliJ seems to have fixed it .-.

alpine dagger
#

Finally fixed the issue

short walrus
#

👋 Hey, I'm pretty new to forking Paper and working with patches in general, and I'd really appreciate some help.

I'm currently trying to make a fork for 1.21.10, and I've been trying to work with the paperweight examples, but they're on 1.21.8 by default, and any time I try to change the default fork name from fork to what I want it to be, it just falls flat on its face and completely fails to apply patches, rebuild them or create the bundler jar at all. I'm not really too experienced with patches in general, so I'm really not sure how I'm meant to edit/update the build.gradle.kts.patch file in the server folder to make my changes properly, unless I'm horribly misunderstanding something.

I've spent a few days now trying to get this done but I'm just not getting it unfortunately, and all my attempts to figure things out just haven't worked.

lucid mulch
#

and use the single file patches task to rebuild the build file patches

short walrus
#

I'm assuming that I've missed something obvious?

lucid mulch
short walrus
#

Ah, I see. That explains it

empty quail
#

you how did yall resolve this problem?

#

this is when I scanned the project

echo kilnBOT
rapid fractal
#

@unreal charm please read and provide information ^

unreal charm
#

ok

raven chasm
#

Hey I'm trying to build the adventure-platform project with a custom build of the adventure api. I'm a novice when it comes to large gradle projects such as this, so I'm getting stuck. I cloned the repositories and have added a few lines to adventure-platform/settings.gradle, and adventure-platform/api/build.gradle.
adventure-platform/settings.gradle (Directly underneath the rootProject.name clause)

includeBuild '../adventure'

adventure-platform/api/build.gradle (Replacing api "net.kyori:adventure-api:${rootProject.adventure}")

api ":adventure:adventure-api"
#

I am running ./gradlew :adventure-platform-api:build, getting the error "Could not find :adventure:adventure-api Required by project ':adventure-platform-api'"

#

The adventure project is in the correct location for the relative path to work

#

and I can run ./gradlew :adventure:projects successfully from the adventure-platform directory to see projects in ../adventure, which to me means they should be linked

#

I'm actually about to go to dinner, so sorry if someone responds and I don't

#

I might be eating

raven chasm
raven chasm
#

Hey forget gradle errors, any reason why https://github.com/PaperMC/Paper is throwing 100 errors seemingly stemming from "/mnt/drive1/Paper/paper-server/src/main/java/io/papermc/paper/pluginremap/ReobfServer.java:14: error: RenamerImpl is not public in net.neoforged.art.internal; cannot be accessed from outside package"?

#

I have made no modifications, just pulled and ran ./gradlew build

#

gonna get more info in a moment

#

The error is in the paper-server project, and I'm currently getting a ton of errors due to net.minecraft not being able to be resolved, likely a product of some part of the build process failing before it downloads and maps out the minecraft jarfile.

#

Attempted to switch branches to ver/1.21.9 to see if that helped, it did not

#

gimme a moment to push the problem reports

#

ok got them

#

or the links can be filtered by automod

#

links here on pastes.dev, I don't wanna paste raw html in there

novel knoll
raven chasm
#

Thank you, I need to read things more often.

#

Sorry about that

quartz tulip
#

could anyone help

main mica
#

update gradle

quartz tulip
#

I am using the wrapper

main mica
#

well then update the wrapper

#

You have gradle 8.8, paperweight requires at least 9.0.0

quartz tulip
#

On intellij's website it said that wrapper uses the newest

#

and I have updated intellij's to its newest

main mica
#

I mean the log is pretty "clear" (if you can call any of the gradle logs clear).
Incompatible because this component declares a component, as well as attribute 'org.gradle.plugin.api-version' with value '9.0.0' and the consumer needed a component, as well as attribute 'org.gradle.plugin.api-version' with value '8.8'

Wants 9.0.0, has 8.8

quartz tulip
#

I have this problem that it always says that JAVA_HOME is set to an invalid directory, even tho its set to the most perfect and normal directory

#

and if I ignore this message it usually works

quartz tulip
main mica
#

maybe just try reinstalling the JDK? idk

quartz tulip
quartz tulip
main mica
#

it might dislike the . there, only thing that seems unusual about that path to me

quartz tulip
#

which ,

#

before jdks?

main mica
#

yeah

#

maybe it doesn't work in hidden folders? No idea. But not being able to update is a pretty major breakage, even if the other tasks work for some reason

quartz tulip
#

I shouldnt be even bothered by that as intellij is stating tho

quartz tulip
novel knoll
#

the jdk dir

quartz tulip
#

yep

#

that fixes it

empty quail
#
Practice:main: Could not find net.kyori:adventure-text-serializer-ansi:.
Required by:
    root project 'Practice' > io.papermc.paper:dev-bundle:1.21.8-R0.1-SNAPSHOT:20250906.215025-55

Possible solution:
 - Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html

#

anyone knows what this is?

limber onyx
#

afaik papermc dependency didn't find adventure-text-serializer-ansi dependency in your repositories.

empty quail
orchid olive
#

Unable to resolve a dev bundle, which is required for paperweight to function.
Add a dev bundle to the 'paperweightDevelopmentBundle' configuration (the dependencies.paperweight extension can help with this), and ensure there is a repository to resolve it from (the Paper repository is used by default).

echo kilnBOT
proud maple
#

the docs show how to add it

orchid olive
#

got it like that

#

but doesnt work

echo kilnBOT
orchid olive
proud maple
mental escarp
#

I'm using maven could that be the issue?

smoky violet
#

there is no supported tooling to use server internals with maven

#

*supported by papermc

mental escarp
#

Hmm, Might be that I'm using A cobweb of spigot CODEMC Nms with Paper

#

Let me try switching to fully paper then.

smoky violet
#

if you're using their tooling idk if it will totally match mini's thing, I think it's kind of outdated in general

#

surprised it works (maybe he did some updates idk about)

mental escarp
#

Using this one.

#

Its just a repo with all NMS

smoky violet
smoky violet
mental escarp
smoky violet
#

what does your pom look like now

echo kilnBOT
mental escarp
#

Thats spigot, but thats just this module so yee XD

#

Like the main Pom Is paper.

smoky violet
mental escarp
#

Thanks Ill check it out time for bad now XD

smoky violet
#

most of the stuff you'll want to edit is in gradle.properties, settings.gradle.kts, and the build.gradle.kts files

mental escarp
#

Might be better of switching to gradle.

smoky violet
#

I would say so

vagrant scaffold
#

100% worth it imo

silver lodge
#

Hello, I have a problem with writing kotlin plugin for gradle, mainly because I don't know what anything does, even after reading gradle docs about it.

Basically I want to create my gradle plugin in kotlin and publish it to local repository. I've never worked with kotlin, but writing code is not a problem, the problem is creating the jar.
I managed to produce a jar and publish it, but I doesn't get recognized as a plugin by gradle build file in other projects. it publishes the jar and pom correctly, pom looks correct.

For my usecase, from what I understood from gradle docs, I want to create a convention plugin, but instead of using it in multimodule project, I want to also use it in other projects.

Is there anywhere a working example of a gradle plugin that adds new gradle tasks (the functionality I want) and can be published through maven local?

bronze ember
#

I guess you can look at paperweight

tough pilot
#

Quick question, why is it that the generateDevelopmentBundle task creates a bundle that when used fails to resolve io.netty etc at compile time?
This doesn't happen when It fetches it from papermc's repo. How do I fix this?

silver lodge
#

ok no, it worked once

#

I'll figure it out

#

oh just an empty jar because of a typo

viscid rover
#

hi, i'm trying to add paperweight-userdev to a project made with the minecraft development plugin for intellij

#

it, however, is giving me the following error: ```
A problem occurred configuring root project 'pluginstuff'.

Could not resolve all artifacts for configuration ':classpath'.
Could not resolve io.papermc.paperweight:paperweight-userdev:2.0.0-beta.19.

smoky violet
#

your project is the consumer

#

so, think why your project would be wanting something compatible with gradle 8.8 and why something for 8.14.3 would fail

#

hint:

echo kilnBOT
bronze ember
#

Some day ill submit a proposal to fix that error message

viscid rover
#

ty, i fixed it

mental escarp
#

Does someone know how to fix red doom XD

fading vapor
mental escarp
fading vapor
#

does your project build?

mental escarp
#

Nope it stops here:

:paper_1_21_10:main: Could not find net.kyori:adventure-text-serializer-ansi:.
Required by:
    project ':paper_1_21_10' > io.papermc.paper:dev-bundle:1.21.10-R0.1-SNAPSHOT:20251121.234754-44

Possible solution:
 - Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html
#

And the IDEA just keeps freezing

fading vapor
mental escarp
#

Through the Ij butto nbut also tried to terminal

#

Even when copying the default project from github

#

I get the same error

magic hearth
lucid mulch
#

AW HELL NAH WHY DID I MENTION IT

#

NOW ITS ALL RED AGAIN AFTER A COUPLE WEEKS PEACE

#

wtf

#

yeah idea is just borked

#

use the latest 2025.1.x version

#

it works perfectly

#

the .2.x are broken

tough pilot
#

Quick question, why is it that the generateDevelopmentBundle task creates a bundle that when used fails to resolve io.netty com.mojang.authlib datafixer etc at compile time?
This doesn't happen when It fetches it from papermc's repo. How do I fix this?

plucky goblet
#

https://pastes.dev/fx6GJAMrBM

hey, I'm trying to use paperweight for 1.21.8, using the latest version of paperweight (beta 19) and running into this issue, was wondering if anyone knew what was up?

> Task :module:bootloader-paper:paperweightUserdevSetup FAILED   
Skipping vanillaServerDownloads (up-to-date)                     
Skipping extractFromBundler (up-to-date)                           
Skipping remapMinecraft (up-to-date)                             
Skipping setupMacheSources (up-to-date)                          
Skipping applyPaperclipPatch (up-to-date)                        
Executing applyDevBundlePatches...                               
                                                                                                                                 
FAILURE: Build failed with an exception.                                                                                        

* What went wrong:                                               
Execution failed for task ':module:bootloader-paper:paperweightUserdevSetup'.
> io.papermc.paperweight.PaperweightException: Exception executing applyDevBundlePatches

* Try:                                                           
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to generate a Build Scan (powered by Develocity).
> Get more help at https://help.gradle.org.

BUILD FAILED in 2s
24 actionable tasks: 2 executed, 22 up-to-date
#

running java 21

plucky goblet
#

(resolved, accidentally set my toolchain to 17 in a build script)

rocky palm
torn sonnet
#

<!-- Use a stable Paper API version that matches your runtime (logs showed 1.21.9) -->

#

Did you AI your pom.xml floshblink

#

Can you share output of mvn dependency:tree

rocky palm
tender edge
torn sonnet
rocky palm
torn sonnet
#

Okay, if you're not willing to try my suggestion then I don't konw what to tell ya.

rocky palm
#

that's what I meant

warm linden
stuck pilot
warm linden
#

I can build 1.21.10 just fine, I'm trying to build 1.21.6, and I get that error for some reason.

smoky violet
#

This channel is not for support with building other people's projects

mental escarp
#

I'm having some issues

[22:21:59 ERROR]: Error occurred while enabling ExcellentEnchants vSVEN-v2 (Is it up to date?)
java.lang.IllegalStateException: NightCore is not initialized!
main: su.nightexpress.excellentenchants.EnchantsPlugin
bootstrapper: su.nightexpress.excellentenchants.bridge.paper.PaperEnchantsBootstrap
name: ExcellentEnchants
version: 'SVEN-v2'
description: A lot of new enchantments properly integrated into the server!
api-version: '1.21'
#loader: io.papermc.testplugin.TestPluginLoader
dependencies:
  server:
    nightcore:
      load: AFTER
      required: true
    ProtocolLib:
      load: BEFORE
      required: false
    packetevents:
      load: BEFORE
      required: false
    PlaceholderAPI:
      required: false
    MythicMobs:
      required: false

What is going wrong here I don't understand.

lament scarab
#

I think you want before?

mental escarp
#

Ahhh XD

lament scarab
#

Like, I wanna say that that was where they should load in relation to you

mental escarp
#
22:24:08 ERROR]: Error occurred while enabling ExcellentEnchants vSVEN-v2 (Is it up to date?)
java.lang.IllegalStateException: NightCore is not initialized!

Nope still not which I find really weird.

dependencies:
  server:
    nightcore:
      load: BEFORE
      required: true
#
  • ExcellentEnchants (SVEN-v2), HappyItems (0.1-BETA), Worlds (3.9.0-pre1), nightcore (2.10.0)

The plugin is there and it loads fine.

lament scarab
#

You haven't shaded it into your plugin have you?

mental escarp
#

No its a jar on the plugin.

lament scarab
#

Provide the log

#

You shaded it

mental escarp
#

Ahha, okay thats my bad then let me fix that.

#

Ah one module had it shaded my bad XD

mental escarp
white valley
#

Is it possible to use the paperweight plugin in an Kotlin Gradle projekt in Vscode? I tried it and no net.minecraft or org.bukkit.craftbukkit classes can be found. When I open my project with IntelliJ, everything works perfectly fine. In code I currently use these addons from the image.

smoky violet
#

you can use intellij community edition for free

#

nothing we can do about lackluster gradle support in ides not widely used for java

white valley
smoky violet
#

ask them

white valley
#

I should ask code if paperweight works somehow?

smoky violet
#

paperweight is a gradle plugin

white valley
#

I see. Thank you

main mica
#

knowing VSC, there probably is just some extensions for Gradle you need to install

#

but yeah, IJ is gonna be a much better experience

smoky violet
#

pretty sure it’s the red hat one, and the fact that some deps works points to it being incomplete

final jewel
#

I used zed recently for a plugin with paperweight setup and it did fine

#

and that uses jdlts too, so it isn't the language server's fault in this case but possibly just some faulty integration with vscode's extension or user error

final jewel
#

are you sure your build script isn't borked?

white valley
white valley
#

Du you have an extra extension for gradle maybe?

#

Here you can see that nothing can be found.

turbid moon
white valley
sudden verge
lament scarab
#

Mache sources failing would generally be down to the wrong java version being used

lament scarab
#

Well, either the paperweight stuff is using a different version or something else is going really wrong, you would need to try to diagnose why mache is failing

sudden verge
# lament scarab Well, either the paperweight stuff is using a different version or something els...

alright. im trying to update this purpur template from 1.21.8 to 1.21.10. Chnaged the paperweight plugin from 2.0.0-beta.18 to 2.0.0-beta.19. Updated the foojay resolver from 0.5.0 to 1.0.0.
Chnaged the purpurcomiit to the latest one and updted the gradle.properties to the latest minecraft release (1.21.10) before all that I ./gradlew applyAllPatches. and then applied these changes. When I rebuild all purpurpatches via ./gradlew rebuildPurpurPatches. thats when error began

#

you can even visit my repo to diagnose it yourself too.

lament scarab
#

I'm not going to diagnose it for you

#

I can't really help you here

sudden verge
lucid mulch
#

why does the userdev generated server jar include both .class and .java files? what is the point of that?

lament scarab
#

source jar

queen pike
#

Hey, does anyone know how to get NMS working with paper? I am trying to setup paperweight with gradel but i have no idea

novel knoll
#

what have you tried? what are you having trouble with?

queen pike
#

well i cloned thier example repo and it worked perfectly, but when I try and make my own plugin it dosnt work and I get all sorts of errors

#

are there are other files I need ot copy or something?

echo kilnBOT
queen pike
#

I am going to try and update gradel and stuff now

#

thanks

queen pike
#

Okay I am actaully quite confused

#

updating gradel seemed to help a lot

#

But I have a weird error:

#

I do everything and basiclaly nothing works, I cant import any NMS things. Then a few mins later it just says Indexing at the bottom of the IDE, has a progress bar, (it didn't show up before its not like a task was running) and then once its done I can get NMS things?

#

I got no idea but yeah its weird

#

thank you for the help about updating especially but I am wondering if you have any idea with this issue?

rapid fractal
#

If you have a new error after following the steps from the bots, upload your new error following the insctuction and post it.

#

(make sure ALL steps are followed, and ALL info requested is provided)

novel knoll
echo kilnBOT
novel knoll
#

check that docs page out for using paperweight-userdev in plugins

#

all you need to do is add the plugin and define the Minecraft version, make sure gradle, your ide, the userdev version etc are up to date and use a supported java version for target (21 for current day Minecraft)

queen pike
#

thank you

#

that worked

#

yay its working

torn island
#

Probably a dumb question, but how do you specify load in paperPluginYaml?

Previously this would be it on the bukkit version, but I can only find load order for depedencies in the new one:
load = BukkitPluginYaml.PluginLoadOrder.STARTUP

#

There's no way I just have both blocks right?

#

Looking to register events before the world loads, bootstrap & onLoad are too early, onEnable is too late

lucid mulch
torn island
lucid mulch
#

afaik 1.3.1 is the latest

torn island
whole parrot
#

When trying to use the paperweight gradle plugin, i get this error when executing gradle build

* What went wrong:
An exception occurred applying plugin request [id: 'io.papermc.paperweight.userdev', version: '2.0.0-beta.19']
> Failed to apply plugin [id 'io.papermc.paperweight.userdev']
> Could not create plugin of type 'PaperweightUser'.
> Class io.papermc.paperweight.userdev.PaperweightUser is an abstract class.
#

okay i just realized i'm on gradle 4 for some reason???

#

might fix it

echo kilnBOT
turbid moon
#

^^ These are the general steps to take if you have issues

harsh ore
#

Hey, I am trying to make a multi-platform plugin (velocity and paper). I have a gradle project with 4 modules, common, paper, velocity and build-logic.
Build Logic contains my conventions (e.g for velocity the run-velocity plugin from jmp and his velocity resource factory).
now in my velocity build gradle kts I have the convention as a plugin and I tried using the velocityPluginJson to set the main, however I am getting an error:

velocityPluginJson {
    main = "net.echelonnetwork.core.EchelonVelocityCore"
}```

  • In plugin 'xyz.jpenilla.resourcefactory.ResourceFactoryPlugin_Decorated' type 'xyz.jpenilla.resourcefactory.ExecuteResourceFactories' property 'factories.$0.value.main' doesn't have a configured value.

    Reason: This property isn't marked as optional and no value has been configured.

    
    

anyone able to figure out why this happens?

velocity module build gradle: https://pastes.dev/ykryX1vGOq
build logic (velocity) : https://pastes.dev/9vYnwF4T7i
build logic (base): https://pastes.dev/L3lbwvG5OL

smoky violet
harsh ore
#

should I take the one from the build logic?

#

nevermind that also doesn't work, that gives me: Cannot access 'velocityPluginJson': it is internal in 'gradle.kotlin.dsl.accessors._e6c9791bfbf00592eeb9e4f7f44daa98'

#

double nevermind it was caused by a fault gradle config that didn't error but was causing issues

#

is there an example how to use gremlin with velocity? or does it do it automagically

coarse ginkgo
#

I'm pretty sure someone already tried updating mache to support unobfuscated builds, so: is the number of decompile fixes identical without obfuscation as with it or slightly lower?

brisk belfry
#

Maybe this can help?

coarse ginkgo
#

oh, it's public even, thanks

bronze ember
#

we are an open source project, we strive to have everything in the public 🙂

brisk belfry
coarse ginkgo
sudden verge
#

Do you have to make the patches by hand with git diff or does paperweight takes care of that? If so... What coomand achieves this?

sudden verge
#

I assume

tender edge
#

have you tried reading the whole section?

sudden verge
#

I assuem this
"Modifying (per-file) Minecraft patches

This is generally what you need to do when editing Minecraft files. Updating our per-file patches is as easy as:

Making your changes;
Running ./gradlew fixupSourcePatches in the root directory;
If nothing went wrong, rebuilding patches with ./gradlew rebuildPatches;"
tender edge
#

that's the section, now think about how what it says is different than what you said

sudden verge
#

alright so it means.. that. If I make idk, feature A into one of the minecraft code. from Example-server. then use ./gradlew fixupSourcePatches, then it should make patches and place them into Minecraft-patches? in Example-server.

#

srry for not good grammar

tender edge
#

keep reading

sudden verge
#

So I have to individualy git commit all the patches I make.
"Fixup method
Manual method
Make your changes;
Make a temporary commit. You don't need to make a message for this;
Type git rebase -i base, move (cut) your temporary commit and move it under the line of the patch you wish to modify;
Change the pick to the appropriate action:
f/fixup: Merge your changes into the patch without touching the message.
s/squash: Merge your changes into the patch and use your commit message and subject.
Run ./gradlew rebuildPatches in the root directory;
This will modify the appropriate patches based on your commits.

Automatic method
Make your changes;
Make a fixup commit: git commit -a --fixup <hash of patch to fix>;
If you want to modify a per-file patch, use git commit -a --fixup file
You can also use --squash instead of --fixup if you want the commit message to also be changed.
You can get the hash by looking at git log or git blame; your IDE can assist you too.
Alternatively, if you only know the name of the patch, you can do git commit -a --fixup "Subject of Patch name".
Rebase with autosquash: git rebase -i --autosquash base. This will automatically move your fixup commit to the right place, and you just need to "save" the changes.
Run ./gradlew rebuildPatches in the root directory. This will modify the appropriate patches based on your commits."

tender edge
#

well, there are file-based patches and git based patches, it depends what you're doing

sudden verge
#

primarly paper-patches

tender edge
#

that wasn't one of the options lol

sudden verge
#

also I feel like the paper contributing is a bit outdated, since those commands are to "ambiguous" according to my IDE

tender edge
#

depends

#

ides always lie, the only truth is what gradle tells you running from the cli

sudden verge
#

hm. when I run example ./gradlew rebuildPatches, it says "too ambiguous" and then give me a list of other gradlew commands similiar to it

bold nest
#

date

torn sonnet
raven barn
bold nest
#

Sorry, I did not mean that 🤣

#

Was trying to search something

winter glacier
#

I am currently trying to update my paper fork from 1.21.10 to 1.21.11 and have just updated the gradle.properties by now. As soon as I hit applyAllPatches to update, the build files are throwing errors:

e: file:///E:/Coding/fork/fork-server/build.gradle.kts:62:41: Unresolved reference 'softwareComponentFactory'.
e: file:///E:/Coding/fork/fork-server/build.gradle.kts:77:9: Unresolved reference 'mapToMavenScope'.
e: file:///E:/Coding/fork/fork-server/build.gradle.kts:86:9: Unresolved reference 'mapToMavenScope'.

Anyone knows what could be wrong? Maybe I forgot to update anything specific?

lament scarab
#

depends on what changed, you might need to just delete those files to get it to reapply the build config change patches

#

generally also make sure that your gradle version matches the one used by paper

winter glacier
#

Yeah it was the gradle wrapper

#

thanks

#

But now all my patches are failing because the object id is invalid, any idea how to fix this?

lament scarab
#

I can't comment on an error I can't see

#

generally that just means that the patch failed and that it couldn't find the info it needed to try to resolve it using an alt strategy

winter glacier
# lament scarab I can't comment on an error I can't see
> Task :Shulker:shulker-server:applyMinecraftFeaturePatches FAILED
Applying: Removed unused commands
Patch failed at 0001 Removed unused commands
error: invalid object 100644 83f05b042630891d43cfb567e98666831df80f6e for 'net/minecraft/commands/Commands.java'
error: Repository lacks necessary blobs to fall back on 3-way merge.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config advice.mergeConflict false"
lament scarab
#

so, yea, literally what I said

#

There are tricks to getting the relevant info to sit around for a 3way, idk if it's doc'd somewhere, generally requires having a patched tree somewhere so it can cross ref and rebuilding the patches without filtering

winter glacier
oak copper
#

I am making my own fork and would like to finally publish it after recoding it so many times.

#

But I am having issues with the patch system.

#

I want it to be a feature patch but fork-server/src/minecraft is not tracked as it is in the gitignore

#

How is this supposed to be done then?

#

Should I force add the changed files?

lament scarab
#

src/minecraft is a git repo and so is untracked as it's generated

#

or at least has git repos in there, iirc

oak copper
#

src/minecraft should have its own repo?

main mica
#

You shouldn't publish that, it's Mojang code

oak copper
#

Well of course

main mica
#

You publish the patches to it. Not the code itself. Just like with paper (or the fork example repo)

oak copper
#

I know that 😄

#

I just need to figure out how I can get it to generate the feature patch

#

I know how to do file patches

main mica
#

I mean that ^ and the resulting patch files should appear in minecraft-patches/features/. Instead of /sources/ as the file patches do

oak copper
#

Yeah aware of that

novel knoll
oak copper
#

Well the fork-server/src/minecraft isnt a git repo

proud maple
#

src/minecraft/java is

proud maple
novel knoll
#

yeah src/minecraft/java and src/minecraft/resources are git repos

oak copper
#

I wasnt able to figure that out 😄

main mica
oak copper
#

Yeah I just assumed the src/minecraft to be a repo

#

I love how you assumed I dont understand the patching system 😄

turbid moon
oak copper
#

Fair

grizzled river
#

where can i find the most recent snapshot of userdev?

smoky violet
#

why

#

the release works fine for 1.21.11

turbid moon
#

Which is v2.0.0-beta.19 for the record ^^

grizzled river
#

was just my intellij acting up sweat, had to invalidate my caches

grand bone
#

Guys do anyone knows when will the 1.21.11 build will come out

grand bone
grand bone
torn sonnet
grand bone
turbid moon
#

No, up to 25 is supported. However the dev bundle might not support a newer version

novel knoll
#

you should target the same java version as the minecraft version you're building against targets

#

Incompatible because this component declares a component, as well as attribute 'org.gradle.plugin.api-version' with value '8.14' and the consumer needed a component, as well as attribute 'org.gradle.plugin.api-version' with value '8.8'
your gradle is outdated

echo kilnBOT
novel knoll
#

are those error messages getting worse with time?

#

i swear it used to be clearer not a month ago

oak copper
#

Which sometimes makes them hard to read

#

Like cpp compile errors

#

Which are honestly pretty good just long and hard to understand

final jewel
#

That is the opposite of pretty good

oak copper
glass sable
#

(same if run in intellij or via wsl)

#

hm, I got a step further but now basically all files conflict lmao

static urchin
#

uhm

#

windows moment or something?

#

run it with -Dpaperweight.debug=true and see where it explodes

#

after it explodes however, you are kinda gonna need to reapply patches, I doubt its gonna leave the inner repo in a usable state

#

@glass sable

glass sable
#

yeah I found out the reapply part already :S

static urchin
#

so solved? or still stuck on somethign

glass sable
#

it's rebuilding patches rn, sec

#

yeah, seems to have worked now. Not sure if it made the difference but I ran everything in WSL

#

might've had some broken state left when I tried it in IJ before though

static urchin
#

fwiw, the command literally just does a git commit --fixup=file and an autosquash interactive rebase in the internal moj git repo

#

but sweet

teal raptor
#

how can I fix cus im pretty new to forking and couldn't find any documentation or 1.21.10 example

#

only thing i did is changed to latest commit and rebrand + change implementation("paper-api") to fiber-api and rebuild paper patches

lament scarab
#

I mean, it's fairly hard to say, this tooling is generally provided at your own risk

#

pretty sure that the fork example already has paper-api renamed, that would imply you touched the wrong thing

teal raptor
main mica
#

Generally look at the example repo, the Paper contributing.md and the gradle task descriptions. That should give you enough info to get started.

The normal build task is definitely not part of any of that

vital cove
#

Hi, is there a way to apply mapping patches in a paper fork?
There's this change in the obfuscated variables in build-data/reof-mappings-patch.tiny in paper, but idk how to apply those downstream.
If I add a file at the same path with those entries in the fork, those mappings will not be applied and plugins will fail to remap, but work fine if I apply them into paper directly (by just cloning the paper repo) instead of a fork.

(I can also just contribute this in a PR, but not sure if that's something anyone can contribute or you prefer to leave that to someone on the team)

#

^ Btw, the remapper is enabled in build.gradle.kts, with updated spigot commit hash and craftbukkit legacy package.
The problem is that those two lines I changed in the screenshot do not get applied in a fork

main mica
#

You do have a typo there (reof instead of reobf), but looking at SpigotTasks.kt, it seems like only the paper mappings patch gets used

lucid mulch
main mica
#

Not sure if its worth changing that with obfuscation being gone in the next Minecraft update anyways

lucid mulch
#

-# if u want i can perhaps allow it for forks too in weaver heh 🦀

vital cove
#

yh, the typo is only on the message, is properly named on the project (i just Ctrl-C + Ctrl-V ngl)

main mica
#

I am admittedly not very experienced in gradle plugins, but this is the task here and it seems to ignore the mappings file from forks, only using the paper extension

vital cove
#

Well, I think I already did the heavy lifting to find the new mapping names based

lucid mulch
#

you can just fork the paper repo, modify it and set the upstream to it too cat_what

vital cove
lucid mulch
#

just fork paper, make ur changes, upload it to github and then change the build.gradle.kts to use the normal upstream specifying way instead of upstreams.paper and change the hash to that commit

main mica
#

you probably just want to use the branch of the remapper PR

lucid mulch
#

that is possible too lmfao

main mica
#

(but also gently yell at those plugins that don't work yet, they will have to update to mojmapped for the first update in 2026)

vital cove
#

I did, trust KEKWA

lucid mulch
#

instead of upstreams.paper use upstreams.register(“..”) and add repo = github(“…”, “…”) under ref

#

something like that

#

look at the examples im heading off soon

vital cove
#

sure

vital cove
vital cove
vital cove
#

In case someone needs a solution like this in the future, this is the appropriate way to handle it.
Compared to when you fork a fork of paper (fork-of-fork), this is the syntax required to "trick" paperweight into thinking the repo provided is Paper (referenced from this extension)
Using the regular convention for a fork-of-fork project will result in an exception when trying to apply the patches

Basically use repo.convention(...) instead of repo = ...
And add applyUpstreamNested.convention(false)

thorn oxide
#

Failed to apply 43 mache patches

why am i getting this?

#

i bumped version from 1.21.8 to 1.21.11

lament scarab
#

generally make sure that your paperweight and decompiler, etc, all match what paper is using

#

and make sure that you're using java 21

thorn oxide
#

im trying now

#

i updated gradle and paperweight

thorn oxide
#

Still have this issue

lucid mulch
#

./gradlew cleanCache clean

thorn oxide
#

yes i did

obtuse mural
#

Note: already asked here - #paper-dev message a couple hours ago

after updating paperweight from 1.20 to 1.21.10, I can no longer resolve any classes (even public ones) under net.minecraft.network.protocol.common.custom except BrandPayload, CustomPacketPayload, and DiscardedPayload

I tried gradle clean, but still, it will not compile even though .gradle/caches/paperweight/taskCache/mappedServerJar.jar does indeed contain the numerous classes that are supposed to be under that package

#

but it's being hidden somehow for whatever reason

echo kilnBOT
shrewd crestBOT
#
Sentinel
Version

7c98b99 on main

Build Time

<t:1753645036:F>

Boot Time

<t:1760800266:R>

bold lodge
#

Hello build toolers

#

Which paperDevBundle do I have to use for 1.21.11?

#

This one is not resolving:
paperweight.paperDevBundle("1.21.11-R0.1-SNAPSHOT")

#

I'm using Java version 21 and Gradle 9.2.0

echo kilnBOT
bold lodge
#

There you go

#

And yes, I'm trying to fork dynmap to make a paper version of it

#

If I don't die on the process

turbid moon
#

You will have to apply the plugin in the relevant subprojects (or, in your case, allprojects) as well

bold lodge
#

I set it on "allprojects", no?

turbid moon
#

Generally, for common setup like this, the use of allprojects/subprojects should be avoided and instead you should look into using buildSrc

turbid moon
#

The reason other plugins are working fine is because of the subprojects block right below ```groovy
subprojects {

apply plugin: "java"
apply plugin: "maven-publish"
apply plugin: "com.gradleup.shadow"
#

You don't apply the userdev plugin though

#

You'd maybe also want to move the dependencies block over to the subprojects block instead of allprojects

bold lodge
#
subprojects {

    apply plugin: "java"
    apply plugin: "maven-publish"
    apply plugin: "com.gradleup.shadow"
    apply plugin: "io.papermc.paperweight.userdev"
turbid moon
#

Right

bold lodge
#

Same error tho

turbid moon
#

If it still doesn't work, could also be so kind as to send the full build log? Because "this one is not resolving" does not say a whole bunch

bold lodge
#

IT says this now: Unable to resolve a dev bundle, which is required for paperweight to function

#

After moving the dependencies block

#

Should I have it in both places?

turbid moon
#

Oh yeah, also do apply false on the plugin at the top

bold lodge
#

Ah ok

turbid moon
#

So it doesn't apply to the parent project

bold lodge
#

Worked like a charm, you fixed every error 🙂 and dev bundle is working! Now I hope I don't die changing everything it will ask me to change to compile on 1.21.11 xd

turbid moon
#

Well, nice to hear

#

Good luck

bold lodge
#

Thanks! 🙂

obtuse mural
# echo kiln

sure; build.gradle.kts: kt plugins { java id("io.papermc.paperweight.userdev") version "2.0.0-beta.19" } dependencies { paperweight.paperDevBundle("1.21.10-R0.1-SNAPSHOT") } and gradle is version 9.2.1

#

and to keep everything in one spot, here's my original message:

after updating paperweight from 1.20 to 1.21.10, I can no longer resolve any classes (even public ones) under net.minecraft.network.protocol.common.custom except BrandPayload, CustomPacketPayload, and DiscardedPayload

I tried gradle clean, but still, it will not compile even though .gradle/caches/paperweight/taskCache/mappedServerJar.jar does indeed contain the numerous classes that are supposed to be under that package, but it's being hidden somehow for whatever reason

main mica
#

I mean, they no longer exist?

obtuse mural
#

why does the mapped server jar contain it tho? even after clearing caches

#

oh

#

nvm

#

it still existed even after clearing caches, but not when trying it on a new project (which is why my buildscript is so short)

#

so idk what went wrong there but thanks

main mica
#

mcsrc doesn't go back to 1.21.10 and I no longer have that locally anymore either, but if I had to guess Mojang just moved whatever was there before around. They do that pretty often

obtuse mural
#

wait

#

I assumed gradle clean would also clear .gradle 🤦

main mica
#

it only cleans the /build/ directory iirc

obtuse mural
#

seems a bit odd

#

but everything works correctly now

#

:)

bold nest
#

Is there any resources to learn more regarding patches when it comes to forks. I've got a basic understanding but I'm looking for further tips etc

main mica
#

Patch files themselves are just a Git concept, not really something Paper specific. there should be online resources for that (though I don't know any).
Otherwise the Paper Contributing.md is very helpful, as are the gradle task descriptions

fiery jasper
#

Hey, I'm attempting to update a plugin of mine to 1.21.11 (via paperweight). Originally it worked with all versions I had until I swapped my version to 1.21.11
Now I get the error The current dev bundle does not provide reobf mappings. despite having the plugin mojang mapped in shadowJar

I looked at https://docs.papermc.io/paper/dev/userdev/#default-mappings-assumption and the solution it gave me throws an error: Caused by: groovy.lang.MissingPropertyException: No such property: MOJANG_PRODUCTION for class: io.papermc.paperweight.userdev.ReobfArtifactConfiguration

Here's the build.gradle file: https://hastebin.com/share/aronivavol.bash

main mica
#

You are running reobfJar (in your shadow task)

final jewel
main mica
#

1.21.11 doesn't have Spigot mappings yet, so that task won't work. If you run it without reobf, it should work fine

main mica
#

next vanilla release will get rid of obfuscation anyways, so its probably a good idea to just permanently remove that step in the near future

lusty flame
brave widgetBOT
torn sonnet
rapid fractal
lusty flame
#

Hello people, how would I fix this:
Caused by: org.gradle.internal.resolve.ModuleVersionNotFoundException: Could not find io.papermc.paper:dev-bundle:1.21.10-R0.1-SNAPSHOT.

echo kilnBOT
clever basin
rapid fractal
#

Encourage people to go through proper steps to troubleshoot according to the bot message @clever basin

lusty flame
tender edge
#

send the full log

#

in a pinch, you can also edit gradle/wrapper/gradle-wrapper.properties to bump the version even with buildscript errors

lusty flame
tender edge
#

when you run ./gradlew <whatever>, you'd upload the full output

#

not some random stacktrace

lusty flame
#

Right

lusty flame
#

heres the full log

#

I believe

#

If thats what youre looking for

bold nest
#

Shouldn't your dependencies look like this?
paperweight.paperDevBundle("1.21.10-R0.1-SNAPSHOT")

proud maple
lusty flame
hearty harness
#

so do i change it just for the runserver or my entire gradle?

rocky geyser
#

what does your build.gradle(.kts) look like

iron totem
#

Which is the latest version of paperweight userdev? Is it 2.0.0-beta.19 or 2.0.0-SNAPSHOT?

bronze ember
#

the snapshot is newer but you shouldnt need to use it

#

or do you have some issue?

#

been a while, maybe we should do a release

iron totem
#

No just that the documentation says I should use the latest and I wasn't sure which one it is

#

thanks

bronze ember
#

I am somewhat sure the docs auto update the version

#

yeah they do

iron totem
#

I have a renovate bot set up and it just updated it to -SNAPSHOT from the beta one so I was a little confused 🙂

bronze ember
#

that seems dum

#

ill look into making a release once I checked with the team, good to keep dependencies up to date

dusky stone
#

i am haveing trouble with the patches folder

torn sonnet
#

okay

ionic mural
#

are you supposed to run git add . inside paper-server/src/minecraft

#

cuz when I do that it says the files there are git ignored

#

ok I had to go into the java folder

gentle viper
#

I found intellijs vcs tab to be helpful because it shows all of the repos and the changes in each

torn sonnet
#

What's the polite way to tell paperweight-userdev to try pulling the reobf mappings now?

raven barn
#

clear cache no?

torn sonnet
#

There's two of them. Which one lets me just get the reobf without having to rebuild the server jar?

raven barn
#

i would guess cleanCache

torn sonnet
#

I yolod and ran both of them on my 1.21.11 module, and it ended up rebuilding and still says no mappings. For funsies I've now run them on all along with a proper clean and it's rebuilding all the versions! Hope it grabs it this time...

#

The current dev bundle does not provide reobf mappings.
notlikepaper

static urchin
#

Did you --refresh-depencies it

torn sonnet
#

No, because nonswag said to clear cache not refresh dependencies! :3

#

... guess I should have run this on the submodule. Now it's rebuilding every former version jar too kek

torn sonnet
#

Three hours later (okay, I walked away) it did work, thanks lynx :3

lucid mulch
#

could we get an applyAllApiPatches (and by extension rebuildAllApiPatches task just like there is one for applying all server patches in paperweight-patcher? It would be a nice qol especially for layered fork setups, not to have to run multiple tasks and just have one for applying/rebuilding all api patches

#

im aware that there is a similar task apply(upstream-name)Patches that applies all api patches from all upstreams but it doesnt apply your api patches, it is also correspondant to the applyServerPatches which does the same thing skipping your server patches and only applying upstreams'

#

i would say this should be doable with the current task wiring, if any of the team members are open to such a change feel free to reply and i'll stir up some pr

#

for this functionality

#

also another question related to PW, will the mappings classifier fully disappear starting from 26.1 from the bundling tasks?

#

as they currently have the namespace in their names and archives (Mojmap/Reobf)

#

or will the reobf variants simply disappear and the mojmap tasks' names will stay the same

lucid mulch
#

as upstream-name patches only applies the api, not all of the upstream's patches and the Server apply only applies upstream's server patches

#

perhaps they should be differentiated more?

#

apply(upstream-name)ApiPatches and apply(upstream-name)ServerPatches with an optional apply(upstream-name)Patches that executes both of these tasks

winter glacier
# bold nest Is there any resources to learn more regarding patches when it comes to forks. I...

I really don’t like this guy at all, but this video actually helped me understanding it a bit more https://youtu.be/Z7OsfvNK3WU?si=NvUG4AZ0uixJRmnP

Step-by-step how to make a custom Paper fork, create your own patch and submit your epic changes as a PR to Paper dev team.

Warning: Not for the faith of heart; forking requires good experience with Java. Beginners, please watch my free plugin tutorials first and make some plugins before attempting at editing the core Paper Minecraft server.

I...

▶ Play video
proper grove
bold lodge
#

Hello guys, how can I download also de javadocs along with paperdev on intelliJ? For some reason I didn't get them

torn sonnet
#

Do you mean paper API? Should be able to tell it to download them when it fails to show a doc, with a button on that message.

bold lodge
#

But now I meant for mojang files

torn sonnet
#

IDEA do be silly sometimes.

bold lodge
#

Are those not included?

torn sonnet
#

NMS doesn't have javadocs. Poking server internals is very much "good luck!" territory

bold lodge
#

Althought its not a() b()

#

Its obviously not the real code, its raw decompilex

torn sonnet
#

Yes. If you're getting obfuscated method names you aren't using paperweight userdev.

bold lodge
#

Names are ok, but the code looks like it's decompiled, not actual source

torn sonnet
#

I mean, yes. Mojang does not distribute source.

bold lodge
#

I used to understand better decompiled code then haha

#

Thanks!

torn sonnet
#

In 2026 they will stop obfuscating the main releases. But still won't be source.

torn sonnet
#

The first one feels like you're wanting an issue to track a feature request?

grizzled river
#

Hi. I'm having an issue with a method I'm compiling against in paperweight user-dev 1.21.11 not existing when running my plugin on a paper server.

The method I'm using is Registry.register(Registry<V> registry, Identifier key, T value).

When running a normal paper server, this method just doesn't exist at all. Here's what happened when I printed out the declared methods:

[20:18:52 INFO]: [BiomesAPITest] [STDOUT] size
[20:18:52 WARN]: Nag author(s): '[]' of 'BiomesAPITest v0.0.4' about their usage of System.out/err.print. Please use your plugin's logger instead (JavaPlugin#getLogger).
[20:18:52 INFO]: [BiomesAPITest] [STDOUT] getId
[20:18:52 INFO]: [BiomesAPITest] [STDOUT] byIdOrThrow
[20:18:52 INFO]: [BiomesAPITest] [STDOUT] getIdOrThrow
[20:18:52 INFO]: [BiomesAPITest] [STDOUT] byId
[20:18:52 ERROR]: Error occurred while enabling BiomesAPITest v0.0.4 (Is it up to date?)

I'm going to note that this only happens on a normal paper server jar and not when I'm using jpenilla's run-paper along with paperweight-userdev:

plugins {
    id("io.papermc.paperweight.userdev") version "2.0.0-beta.19"
    id("xyz.jpenilla.run-paper") version "2.3.1"
}


dependencies {
    compileOnly("io.papermc.paper:paper-api:1.21.11-R0.1-SNAPSHOT") // As soon as I swap to this, the method doesn't exist anymore
    paperweight.paperDevBundle("1.21.11-R0.1-SNAPSHOT") // When I do this, it works fine
    implementation(project(":main"))
}
#

As far as I can tell, the methods exists in paperweight user-dev 1.21.11. I've tried clearing my gradle caches, intellij caches, but the method still doesn't dissappear and I don't see what the server sees when reflecting into net.minecraft.core.Registry

static urchin
#

What do you mean with "swap to" the API only?

grizzled river
#

yes, swapping to just

compileOnly("io.papermc.paper:paper-api:1.21.11-R0.1-SNAPSHOT")

without paperweight user-dev OR if i just run my plugin with a jar straight from https://papermc.io/downloads

#

the only time it works is when i include paperweight user-dev with jpenilla's run-task

static urchin
#

But in the second but you still have user dev right?

grizzled river
#

wdym?

static urchin
#

The question is, is your plugin being remapped or not

#

User dev automatically sets your namespace

#

In your jar manifest

#

If you don't have that, paper is going to try to remap your plugin as if you were using spigot mappings

grizzled river
#

if you're asking whether or not my plugin is being remapped on the server, then yes. But I also tried my plugin with the remapper disabled entirely using -Dpaper.disable-plugin-rewriting=true and I still got the same error. Let me get the logs

static urchin
grizzled river
#

also for a little more context, the classes referencing paperweight user-dev are being shaded into my plugin. My plugin isn't calling these directly

#

i can send the repo

static urchin
#

Well, the thing is the exception is correct like. IdMap does not have this method

#

But, registry has it

#

And spigots name for id map is registry

grizzled river
#

but how come when I reflect into registry it doesnt show those methods at all?

#

oh, maybe it's showing the methods for IdMap

static urchin
#

So what would be happening is, it sees a reference to "registry", thinks your plugin is spigot mapped, translates it to id map and well

#

Explodes

#

Because your plugin was compiled mojmapped

grizzled river
static urchin
#

Triple check that you have the namespace set in your jar

#

To Mojang

grizzled river
#

is there any way for me to change this behavior? also why did this happen on a server with the remapper disabled?

torn sonnet
#

Did you put the thing in the manifest

grizzled river
#

no i didnt

static urchin
#

Idk, the property should correctly yank it

#

Maybe it doesn't retroactively

grizzled river
static urchin
#

Could yank the remapped folder

#

Uh it's on the userdev docs page

grizzled river
#

ok ill take a look, 1 min

static urchin
#

If you are using userdev it should be doing this automatically tho

#

Or are you using reflection only

#

Oh it doesn't

#

paperweight.reobfArtifactConfiguration = io.papermc.paperweight.userdev.ReobfArtifactConfiguration.MOJANG_PRODUCTION

#

Ah

#

The lib is the problem lol

grizzled river
#

lib?

static urchin
#

The biomes API

#

It presumably ships only spigot mapped jars

#

If you shade them in, that means your entire plugin needs remapping

#

Their build script looks like they might have mojmapped jars too tho

#

Oh that is your lib xd

#

Lul sorry

#

GitHub mobile isn't good at showing recent commits

grizzled river
#

sorry

grizzled river
#

i dont know if this is just an issue with my shitty project structure, or something deeper

static urchin
#

Hm, okay but yea something is remapping somewhere

grizzled river
#

maybe i can just cleanup my build files/project and then come back if i cant find out what's causing it?

static urchin
#

I'd delete the remapper folder from the plugins folder

#

And also set the Mojang namespace in your test plugin

#

The fact it becomes ID map means it is the remapper.

#

If your code had been reobfed at compile time, Registry would be IRegistry

#

So yeah it's Mojang mapped jars being remapped by the server because it thinks it's a spigot mapped jar

grizzled river
#

after deleting the .paper-remapped folder i actually saw the logs of it remapping my plugin

static urchin
#

Mhmm

#

Unfun

novel knoll
#

isn't the system property paper.disablePluginRemapping ?

#

where'd you get the one with dashes from lol

static urchin
#

Did Kenny fuck up

#

The announcement

#

For .11

novel knoll
grizzled river
#

i got it from this:

torn sonnet
#

Imagine trusting cat ❤️🐈

static urchin
#

No the post is right

#

Fucking cat

novel knoll
#

ayo

#

do not

torn sonnet
#

Do not the cat

static urchin
#

Don't tell me what @lament scarab and I do in our free time

#

Okay but yea, wrong property it is

grizzled river
#

anyways yeah, it'd probably work if i add in the property to my manifest. But shouldnt the remapper know i'm not using spigot's Registry?

static urchin
#

Well how xd

#

Bytecode just says registry

grizzled river
#

i swear i dont have any build files doing reObf, but i will double check

static urchin
#

You aren't reobfing

#

The problem is spigot nammed their IdMap "Registry"

#

And their Registry "IRegistry"

#

And so your jar says "call registry register method pls" but it doesn't tell the server it's a mojmapped jar and to not break dumb dumb spigot plugins we default assume it's a spigot mapped jar

#

So the remapper just goes, well surely this n.m.c.Registry reference means IdMap in normal mappings

#

And replaces it

grizzled river
#

i'm not sure what to do then lol... If this was just a normal plugin, i'd add the manifest property and call it a day but since this is a lib it wont work

static urchin
#

Well, the shading plugin needs to either a) remap itself post shadow or b) set the jar manifest

grizzled river
# grizzled river anyways yeah, it'd probably work if i add in the property to my manifest. But sh...

i'm confused though as to why i'm having this problem to begin with. I might just be a little stupid, but i've never had this problem compiling against user-dev before. Every time i've used user-dev in a plugin it skips over the correctly named references. AFAIK the remapper should know when I'm compiling using spigot internals vs user-dev. Unless i'm misremembering or i never fully understood how user-dev/the remapper worked to begin with?

static urchin
#

The remapper only knows if the manifest entry is set

torn sonnet
#

It does, depending on your manifest entry

grizzled river
static urchin
#

Yes

grizzled river
#

ohh

#

maybe spigot has it labeled like that too

static urchin
#

The remapper is not smart enough to care about what names there are

#

It literally just does a find and replace

#

And the fact that spigot using names from Mojang mappings for different classes makes shit very confusing

#

Mojang mapped registry is, well, a registry. Spigot uses the exact same class name to refer to Mojang mapped IdMap

static urchin
#

The remapper will just remap that to IdMap

#

And you get id map methods

grizzled river
static urchin
#

Next release yes

#

26.1 will be glorious peace

#

But spigot is moving off spigot mappings too for that so

#

Well have a unified naming Schema because Mojang removed obfuscation entirely for 26.1

grizzled river
grizzled river
static urchin
#

Very huge yea. 2 years late but

grizzled river
#

i thought they were going to stick to re-naming the references back to the spigot names or something like that

static urchin
#

The spigot way I guess

static urchin
#

If md somehow mangled spigot mappings back into unobfed Minecraft

grizzled river
#

map it back to the old spigot mappings because 20 outdated plugins dont work on the latest release of minecraft

lucid mulch
#

im still convinced he will atleast provide a remapper

#

would love to be proved wrong however

lucid mulch
fierce anvil
#

For now I'll just use an external download redirect, but I'd much rather avoid the warning symbol and upload directly