Package net.fabricmc.loom.api.processor
Interface MinecraftJarProcessor<S extends MinecraftJarProcessor.Spec>
- All Superinterfaces:
org.gradle.api.Named
- All Known Implementing Classes:
AccessTransformerJarProcessor,AccessWidenerJarProcessor,InterfaceInjectionProcessor,JsrAnnotationRemapperProcessor,LegacyJarProcessorWrapper,ModJavadocProcessor
public interface MinecraftJarProcessor<S extends MinecraftJarProcessor.Spec>
extends org.gradle.api.Named
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfacestatic interface描述如何在执行期重建一个MinecraftJarProcessor实例.static interfaceNested classes/interfaces inherited from interface org.gradle.api.Named
org.gradle.api.Named.Namer -
Method Summary
Modifier and TypeMethodDescription@Nullable SbuildSpec(SpecContext context) default MinecraftJarProcessor.ProcessorDescriptor<?> 返回一个描述符,用于在执行期重建本 processor 的实例.voidprocessJar(Path jar, S spec, ProcessorContext context) default @Nullable MinecraftJarProcessor.MappingsProcessor<S> Methods inherited from interface org.gradle.api.Named
getName
-
Method Details
-
buildSpec
-
processJar
- Throws:
IOException
-
processMappings
-
descriptor
返回一个描述符,用于在执行期重建本 processor 的实例.配置期构造的 processor 实例常常持有无法放进任务状态的对象(例如
Project、 Gradle 服务对象、任意的第三方实现),直接作为任务输入会破坏配置缓存。因此把重建所需的最小输入 提取成描述符中的纯值,由执行期的任务调用MinecraftJarProcessor.ProcessorDescriptor.createProcessor(org.gradle.api.model.ObjectFactory)重建实例。默认实现直接抛出异常,以保证对既有第三方实现的二进制与源码兼容:未实现本方法的 processor 依然可以正常参与配置期的处理,只是无法参与执行期重建。
-