Use tiny-remapper to remap mixin annotation. (#441)

* use tiny-remapper 0.5.0

* add property of useLegacyMixinAp and rename mixin to mixinAp

* disable mixin ap if useLegacyMixinAp is false

* fix tests

* remove experimental for mixinAp

* enable mixin remapper

* revert changes on API

* rename MixinAp*** to Mixin***

* move useLegacyMixinAp inside MixinExtension

* cleaner code

* update test

Co-authored-by: modmuss50 <modmuss50@gmail.com>
This commit is contained in:
Logic
2021-09-07 06:28:51 -04:00
committed by GitHub
parent 52873435b7
commit 3b0dc7f0f4
20 changed files with 99 additions and 71 deletions

View File

@@ -39,7 +39,7 @@ import net.fabricmc.loom.configuration.ide.SetupIntelijRunConfigs;
import net.fabricmc.loom.configuration.providers.LaunchProvider;
import net.fabricmc.loom.configuration.providers.MinecraftProviderImpl;
import net.fabricmc.loom.configuration.providers.mappings.MappingsProviderImpl;
import net.fabricmc.loom.extension.MixinApExtension;
import net.fabricmc.loom.extension.MixinExtension;
import net.fabricmc.loom.util.Constants;
public final class CompileConfiguration {
@@ -137,14 +137,20 @@ public final class CompileConfiguration {
extension.getUnmappedModCollection().from(jarTask);
}
MixinExtension mixin = LoomGradleExtension.get(project).getMixin();
if (!mixin.getUseLegacyMixinAp().get()) {
return;
}
mixin.init();
// Disable some things used by log4j via the mixin AP that prevent it from being garbage collected
System.setProperty("log4j2.disable.jmx", "true");
System.setProperty("log4j.shutdownHookEnabled", "false");
System.setProperty("log4j.skipJansi", "true");
project.getLogger().info("Configuring compiler arguments for Java");
MixinApExtension mixinApExtension = LoomGradleExtension.get(project).getMixin();
mixinApExtension.init();
new JavaApInvoker(project).configureMixin();