Package net.fabricmc.loom
Interface LoomGradleExtension
- All Superinterfaces:
LoomGradleExtensionAPI
- All Known Implementing Classes:
LoomGradleExtensionImpl
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddTransitiveAccessWideners(List<AccessWidenerFile> accessWidenerFiles) booleanWhen enabled disable all forms of remapping.booleanWhen enabled do not remap the output jars.static LoomGradleExtensionget(org.gradle.api.Project project) 取项目上的 Loom 扩展.org.gradle.api.provider.Provider<ArtifactMetadata.MixinRemapType> getFiles()default ForgeProviderdefault ForgeUniversalProviderdefault ForgeUserdevProviderorg.gradle.api.provider.ListProperty<LibraryProcessorManager.LibraryProcessorFactory> default McpConfigProvidergetMinecraftJars(MappingsNamespace mappingsNamespace) org.gradle.api.file.FileCollectiongetMinecraftJarsCollection(MappingsNamespace mappingsNamespace) getMixin()default PatchProviderdefault PathThe mapping file that is specific to the platform settings.org.gradle.api.provider.Provider<MappingsNamespace> org.gradle.api.provider.ListProperty<RemapperExtensionHolder> default SrgProviderorg.gradle.api.file.ConfigurableFileCollectionbooleanbooleandefault booleandefault booleandefault booleandefault boolean是否为 legacy Forge(1.8-1.16,ForgeGradle 2 时代).default boolean是否为 Forge 系(含 NeoForge)中的现代版本,即非 legacy Forge.booleandefault booleanbooleanbooleanvoidsetDependencyProviders(DependencyProviders dependencyProviders) voidsetForgeRunsProvider(ForgeRunsProvider forgeRunsProvider) voidvoidsetIntermediaryMinecraftProvider(IntermediaryMinecraftProvider<?> intermediaryMinecraftProvider) voidsetMappingConfiguration(MappingConfiguration mappingConfiguration) voidsetMetadataProvider(MinecraftMetadataProvider metadataProvider) voidsetMinecraftProvider(MinecraftProvider minecraftProvider) voidsetMojangMappedMinecraftProvider(MojangMappedMinecraftProvider<?> srgMinecraftProvider) voidsetNamedMinecraftProvider(NamedMinecraftProvider<?> namedMinecraftProvider) voidsetRefreshDeps(boolean refreshDeps) voidsetSrgMinecraftProvider(SrgMinecraftProvider<?> srgMinecraftProvider) Methods inherited from interface net.fabricmc.loom.api.LoomGradleExtensionAPI
addJarProcessor, addMinecraftJarProcessor, addRemapConfiguration, addRemapperExtension, addTaskBeforeRun, areEnvironmentSourceSetsSplit, clientOnlyMinecraftJar, createRemapConfigurations, decompilers, disableDeprecatedPomGeneration, forge, getAccessWidenerPath, getCompileRemapConfigurations, getCustomMinecraftManifest, getCustomMinecraftMetadata, getDecompilerOptions, getDecompileTask, getDefaultMixinRemapType, getDeprecationHelper, getEnableModProvidedJavadoc, getEnableTransitiveAccessWideners, getFabricModJsonPath, getForge, getGameJarProcessors, getInterfaceInjection, getIntermediaryUrl, getIntermediateMappingsProvider, getKnownIndyBsms, getLog4jConfigs, getMappingsFile, getMinecraftJarConfiguration, getMinecraftJarProcessors, getMinecraftVersion, getMods, getModVersion, getNamedMinecraftJars, getNeoForge, getPlatform, getProductionNamespace, getRemapConfigurations, getRemapJsrAnnotationsToJetBrains, getRunConfigs, getRuns, getRuntimeOnlyLog4j, getRuntimeOnlyLwjglGraphics, getRuntimeRemapConfigurations, getSettingsPostEdit, getSplitModDependencies, getTasksBeforeRun, getUncompressNestedJars, getUseIntermediateMappings, getVersionsManifests, injectAccessWidener, injectAccessWidener, interfaceInjection, isForge, isForgeLike, isNeoForge, isQuilt, isSilentMojangMappingsLicenseEnabled, layered, mixin, mods, neoForge, nestJars, nestJars, nestJars, noIntermediateMappings, officialMojangMappings, runs, serverOnlyMinecraftJar, setGenerateSrgTiny, setIntermediateMappingsProvider, setIntermediateMappingsProvider, shouldGenerateSrgTiny, silentMojangMappingsLicense, splitEnvironmentSourceSets, splitMinecraftJar, versionsManifests
-
Method Details
-
get
取项目上的 Loom 扩展.判据只做
instanceof而不直接强转:当 Loom 被两个 classloader 各加载一份时(settings 与 project classpath 各一份、buildSrc/约定插件与 plugins 块各一份、复合构建),「loom」这个名字查得到, 但对象是由另一份 Loom 创建的,裸强转会抛不带任何业务信息的 ClassCastException。 跨 classloader 复用对方实例在语言层面不可能(同名类不是同一个 Class),因此退化为可诊断的失败, 明确指出占用者实际类型与其 classloader,并给出可能成因。- Parameters:
project- 目标项目- Returns:
- 该项目上的 Loom 扩展
- Throws:
org.gradle.api.UnknownDomainObjectException- 项目上没有名为「loom」的扩展(项目未应用 Loom)org.gradle.api.GradleException- 扩展存在但由另一份 classloader 的 Loom 创建
-
getFiles
LoomFiles getFiles() -
getUnmappedModCollection
org.gradle.api.file.ConfigurableFileCollection getUnmappedModCollection() -
setInstallerData
-
getInstallerData
InstallerData getInstallerData() -
getMetadataProvider
MinecraftMetadataProvider getMetadataProvider() -
setMetadataProvider
-
getMinecraftProvider
MinecraftProvider getMinecraftProvider() -
setMinecraftProvider
-
getMappingConfiguration
MappingConfiguration getMappingConfiguration() -
setMappingConfiguration
-
getNamedMinecraftProvider
NamedMinecraftProvider<?> getNamedMinecraftProvider() -
getIntermediaryMinecraftProvider
IntermediaryMinecraftProvider<?> getIntermediaryMinecraftProvider() -
setNamedMinecraftProvider
-
setIntermediaryMinecraftProvider
void setIntermediaryMinecraftProvider(IntermediaryMinecraftProvider<?> intermediaryMinecraftProvider) -
getProductionNamespaceEnum
org.gradle.api.provider.Provider<MappingsNamespace> getProductionNamespaceEnum() -
getDefaultMixinRemapTypeEnum
org.gradle.api.provider.Provider<ArtifactMetadata.MixinRemapType> getDefaultMixinRemapTypeEnum() -
getSrgMinecraftProvider
SrgMinecraftProvider<?> getSrgMinecraftProvider() -
setSrgMinecraftProvider
-
getMojangMappedMinecraftProvider
MojangMappedMinecraftProvider<?> getMojangMappedMinecraftProvider() -
setMojangMappedMinecraftProvider
-
getMinecraftJars
-
getMinecraftJarsCollection
-
getMixin
MixinExtension getMixin()- Specified by:
getMixinin interfaceLoomGradleExtensionAPI
-
getTransitiveAccessWideners
List<AccessWidenerFile> getTransitiveAccessWideners() -
addTransitiveAccessWideners
-
download
-
refreshDeps
boolean refreshDeps() -
setRefreshDeps
void setRefreshDeps(boolean refreshDeps) -
getLibraryProcessors
org.gradle.api.provider.ListProperty<LibraryProcessorManager.LibraryProcessorFactory> getLibraryProcessors() -
getRemapperExtensions
org.gradle.api.provider.ListProperty<RemapperExtensionHolder> getRemapperExtensions() -
getLayeredMappingFactories
Collection<LayeredMappingsFactory> getLayeredMappingFactories() -
isConfigurationCacheActive
boolean isConfigurationCacheActive() -
isProjectIsolationActive
boolean isProjectIsolationActive() -
isCollectingDependencyVerificationMetadata
boolean isCollectingDependencyVerificationMetadata()- Returns:
- true when '--write-verification-metadata` is set
-
dontRemapOutputs
boolean dontRemapOutputs()When enabled do not remap the output jars. -
disableObfuscation
boolean disableObfuscation()When enabled disable all forms of remapping. -
getPatchProvider
-
getMcpConfigProvider
-
isDataGenEnabled
default boolean isDataGenEnabled() -
isForgeLikeAndOfficial
default boolean isForgeLikeAndOfficial() -
isForgeLikeAndNotOfficial
default boolean isForgeLikeAndNotOfficial() -
isUnobfuscatedForge
default boolean isUnobfuscatedForge() -
getDependencyProviders
DependencyProviders getDependencyProviders() -
setDependencyProviders
-
getSrgProvider
-
getForgeUniversalProvider
-
getForgeUserdevProvider
-
isLegacyForge
default boolean isLegacyForge()是否为 legacy Forge(1.8-1.16,ForgeGradle 2 时代).判定依据是 userdev 配置的形态(FG2 与 userdev3 都算 legacy), 因此必须在 userdev 解析完成后调用;未解析时
ForgeUserdevProvider.isLegacyForge()会抛异常。 -
isModernForgeLike
default boolean isModernForgeLike()是否为 Forge 系(含 NeoForge)中的现代版本,即非 legacy Forge. -
getForgeProvider
-
getForgeRunsProvider
ForgeRunsProvider getForgeRunsProvider() -
setForgeRunsProvider
-
getPlatformMappingFile
The mapping file that is specific to the platform settings. It contains SRG (Forge/common) or Mojang mappings (NeoForge) as needed.- Returns:
- the platform mapping file path
-
manualRefreshDeps
boolean manualRefreshDeps()
-