Class IntermediaryMinecraftProvider.LegacyMergedImpl
java.lang.Object
net.fabricmc.loom.configuration.providers.minecraft.mapped.AbstractMappedMinecraftProvider<LegacyMergedMinecraftProvider>
net.fabricmc.loom.configuration.providers.minecraft.mapped.IntermediaryMinecraftProvider<LegacyMergedMinecraftProvider>
net.fabricmc.loom.configuration.providers.minecraft.mapped.IntermediaryMinecraftProvider.LegacyMergedImpl
- All Implemented Interfaces:
MappedMinecraftProvider,MappedMinecraftProvider.Merged,MappedMinecraftProvider.ProviderImpl
- Enclosing class:
IntermediaryMinecraftProvider<M extends MinecraftProvider>
public static final class IntermediaryMinecraftProvider.LegacyMergedImpl
extends IntermediaryMinecraftProvider<LegacyMergedMinecraftProvider>
implements MappedMinecraftProvider.Merged
-
Nested Class Summary
Nested classes/interfaces inherited from class net.fabricmc.loom.configuration.providers.minecraft.mapped.IntermediaryMinecraftProvider
IntermediaryMinecraftProvider.LegacyMergedImpl, IntermediaryMinecraftProvider.MergedImpl, IntermediaryMinecraftProvider.SingleJarImpl, IntermediaryMinecraftProvider.SplitImplNested classes/interfaces inherited from class net.fabricmc.loom.configuration.providers.minecraft.mapped.AbstractMappedMinecraftProvider
AbstractMappedMinecraftProvider.MavenScope, AbstractMappedMinecraftProvider.OutputJar, AbstractMappedMinecraftProvider.ProvideContext, AbstractMappedMinecraftProvider.RemappedJars, AbstractMappedMinecraftProvider.RemapperHookKind, AbstractMappedMinecraftProvider.SimpleOutputJarNested classes/interfaces inherited from interface net.fabricmc.loom.configuration.providers.minecraft.mapped.MappedMinecraftProvider
MappedMinecraftProvider.Merged, MappedMinecraftProvider.ProviderImpl, MappedMinecraftProvider.SingleJar, MappedMinecraftProvider.Split -
Field Summary
Fields inherited from class net.fabricmc.loom.configuration.providers.minecraft.mapped.AbstractMappedMinecraftProvider
extension, minecraftProvider -
Constructor Summary
ConstructorsConstructorDescriptionLegacyMergedImpl(org.gradle.api.Project project, LegacyMergedMinecraftProvider minecraftProvider) -
Method Summary
Modifier and TypeMethodDescriptionList<? extends AbstractMappedMinecraftProvider.OutputJar> 供给本 provider 的产物:**生产已改由任务承担**,本方法不再在配置期写任何产物.Methods inherited from class net.fabricmc.loom.configuration.providers.minecraft.mapped.IntermediaryMinecraftProvider
getMavenScope, getTargetNamespace, requiresBackupJarsMethods inherited from class net.fabricmc.loom.configuration.providers.minecraft.mapped.AbstractMappedMinecraftProvider
cacheKey, configureRemapper, configureSplitRemapper, createBackupJars, disableTaskProduction, getBackupJarPath, getDependencyNotation, getJar, getMavenHelper, getMinecraftProvider, getName, getProject, getRemapTask, getVersion, isUpToDate, registerRemapTask, remapJar, remapperHookKind, shouldRefreshOutputsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.fabricmc.loom.configuration.providers.minecraft.mapped.MappedMinecraftProvider
getMinecraftJarPathsMethods inherited from interface net.fabricmc.loom.configuration.providers.minecraft.mapped.MappedMinecraftProvider.Merged
getMergedJar, getMinecraftJarsMethods inherited from interface net.fabricmc.loom.configuration.providers.minecraft.mapped.MappedMinecraftProvider.ProviderImpl
getJar
-
Constructor Details
-
LegacyMergedImpl
public LegacyMergedImpl(org.gradle.api.Project project, LegacyMergedMinecraftProvider minecraftProvider)
-
-
Method Details
-
provide
public List<MinecraftJar> provide(AbstractMappedMinecraftProvider.ProvideContext context) throws Exception Description copied from class:AbstractMappedMinecraftProvider供给本 provider 的产物:**生产已改由任务承担**,本方法不再在配置期写任何产物.本次改造把「判断是否重建 → 取跨进程锁 → 重映射 → 落位」整段交给
RemapMinecraftTask:产物有效性交给 Gradle 的 up-to-date 判定与构建缓存,并发保护交给 任务图,残骸恢复交给构建缓存。本方法只做三件事——逐 jar 注册任务(失败则整批回退,见下)、 把任务产出登记进getMinecraftJarsTaskOutputs、以及把带任务依赖的文件集合注入消费配置。不可投影时整批回退到配置期生产,且必留痕
AbstractMappedMinecraftProvider.verifyProjectable(RemappedJars)判为「无法安全投影」的形态(例如disableObfuscation的直通形态)不进入任务路径,改由AbstractMappedMinecraftProvider.produceInConfiguration(net.fabricmc.loom.configuration.providers.minecraft.mapped.AbstractMappedMinecraftProvider.ProvideContext, java.util.List<net.fabricmc.loom.configuration.providers.minecraft.mapped.AbstractMappedMinecraftProvider.RemappedJars>, java.util.List<net.fabricmc.loom.configuration.providers.minecraft.MinecraftJar>)走改造前的配置期路径。回退是**按 provider 整批**而不是按 jar 的:半批投影会留下 「一部分产物由任务生产、一部分由配置期生产」的混合状态,同一份缓存里出现两种就绪判据。 回退必定打日志(含被拒的具体原因),不是静默吞掉——静默吞掉会得到「以为切了任务、其实还在配置期写」。- Overrides:
providein classAbstractMappedMinecraftProvider<LegacyMergedMinecraftProvider>- Throws:
Exception
-
getRemappedJars
- Specified by:
getRemappedJarsin classAbstractMappedMinecraftProvider<LegacyMergedMinecraftProvider>- Returns:
- A list of jars that should be remapped
-
getOutputJars
- Overrides:
getOutputJarsin classAbstractMappedMinecraftProvider<LegacyMergedMinecraftProvider>- Returns:
- A list of output jars that this provider generates
-
getDependencyTypes
- Overrides:
getDependencyTypesin classAbstractMappedMinecraftProvider<LegacyMergedMinecraftProvider>
-