37ce7f0b37
RemappedRuntimeInheritanceProvider is similar to RuntimeInheritanceProvider, providing access to inheritance information at runtime, but class names are remapped before looking up, and the inheritance is reverse-remapped before returning. This allows the inheritance to be provided from an obfuscated jar, via the cb2obf mappings. For example: java -cp target/SpecialSource-1.2-SNAPSHOT-shaded.jar:mcpc-plus-1.4.7-R0.2-SNAPSHOT-023.jar net.md_5.specialsource.SpecialSource --shade-relocation net.minecraft.server=net.minecraft.server.v1_4_R1 --shade-relocation org.bouncycastle=net.minecraft.v1_4_R1.org.bouncycastle --srg-in ../jars/1.4.7/cb2obf.csrg --in-jar ../IncompatiblePlugin/IncompatiblePlugin-01.jar --out-jar /tmp/sp/out.jar -L -L enables remapped runtime inheritance, in order to use the obfuscated MCPC+ jar classes to lookup the inherited classes for remapping. The same mappings are used as for remapping the plugin (--srg-in and --shade-relocation take effect). The original option, -l, in contrast does not remap on class lookup, and can be used to lookup inheritance from a jar with CraftBukkit mappings, for example: java -cp target/SpecialSource-1.2-SNAPSHOT-shaded.jar:craftbukkit-1.4.7-R0.1.jar net.md_5.specialsource.SpecialSource --shade-relocation net.minecraft.server=net.minecraft.server.v1_4_R1 --shade-relocation org.bouncycastle=net.minecraft.v1_4_R1.org.bouncycastle --srg-in ../jars/1.4.7/cb2obf.csrg --in-jar ../IncompatiblePlugin/IncompatiblePlugin-01.jar --out-jar /tmp/sp/out.jar -l |
||
---|---|---|
src/main/java/net/md_5/specialsource | ||
.gitignore | ||
LICENSE | ||
pom.xml | ||
README.md |
Special Source
Automatic generator and renamer of jar obfuscation mappings.