Minecraft Forge Mod构建报错:无法解析指定forge依赖
无法解析Minecraft Forge依赖:net.minecraftforge:forge:1.19.2-42.0.1:userdev
错误信息
FAILURE: Build failed with an exception. - 出错原因:配置根项目'flashnpcs'时出现问题。 > 无法解析依赖:net.minecraftforge:forge:1.19.2-42.0.1:userdev - 建议操作: > 使用--stacktrace选项获取堆栈跟踪。 > 使用--info或--debug选项获取更多日志输出。 > 使用--scan选项获取完整分析信息。
环境与问题描述
使用Visual Studio Code开发Minecraft Forge模组,执行./gradlew build时触发上述依赖解析错误,修改build.gradle多处配置后仍无法解决。当前build.gradle代码如下:
buildscript { repositories { maven { url = 'https://maven.minecraftforge.net' } maven { url = 'https://repo.spongepowered.org/repository/maven-public/' } maven { url = 'https://plugins.gradle.org/m2/' } maven { url = 'https://jitpack.io' } mavenCentral() } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1+', changing: true classpath 'gradle.plugin.com.github.johnrengelman:shadow:7.1.1' classpath 'org.spongepowered:mixingradle:0.7-SNAPSHOT' } } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'com.github.johnrengelman.shadow' apply plugin: 'org.spongepowered.mixin' group = 'flash' version = '1.2.0' archivesBaseName = 'flashnpcs' java.toolchain.languageVersion = JavaLanguageVersion.of(17) minecraft { mappings channel: 'official', version: "1.19.2" accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') runs { client { workingDirectory project.file('run/client') property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.console.level', 'debug' arg "-mixin.config=flashnpcs.mixins.json" mods { flashnpcs { source sourceSets.main } } } server { workingDirectory project.file('run/server') property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.console.level', 'debug' arg "-mixin.config=flashnpcs.mixins.json" mods { flashnpcs { source sourceSets.main } } } } } mixin { config "flashnpcs.mixins.json" add sourceSets.main, "flashnpcs.refmap.json" showMessageTypes = true } sourceSets.main.resources { srcDir 'src/generated/resources' } dependencies { minecraft 'net.minecraftforge:forge:1.19.2-42.0.1' annotationProcessor 'org.spongepowered:mixin:0.8.5:processor' // FOR SOME REASON THIS DOESN'T LOAD DURING RUNTIME -,- // implementation 'org.json:json:20211205' // shadow 'org.json:json:20211205' } /*shadowJar { archiveBaseName.set('flashnpcs-shadow') archiveClassifier.set('') archiveVersion.set(project.version) minimize() dependencies { // include(dependency('org.json:json:20211205')) } }*/ jar { manifest { attributes([ "Specification-Title" : "flashnpcs", "Specification-Vendor" : "FlashHUN", "Specification-Version" : "1", "Implementation-Title" : project.name, "Implementation-Version" : project.version, "Implementation-Vendor" : "FlashHUN", "MixinConfigs" : "flashnpcs.mixins.json", "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") ]) } } repositories { } //jar.dependsOn shadowJar //jar.enabled = false Why was this here again? jar.finalizedBy('reobfJar')
解决步骤
1. 补充项目级Maven仓库配置
当前build.gradle末尾的repositories块为空,Gradle无法找到Forge依赖的下载源。修改该块:
repositories { maven { url = 'https://maven.minecraftforge.net' } mavenCentral() maven { url = 'https://repo.spongepowered.org/repository/maven-public/' } }
2. 锁定ForgeGradle版本
5.1+的版本范围可能导致拉取不兼容的Gradle插件版本,改为指定稳定版本:
在buildscript.dependencies中修改ForgeGradle依赖:
classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.3', changing: true
3. 清理缓存并刷新依赖
执行以下命令强制清理本地Gradle缓存,重新拉取依赖:
./gradlew clean build --refresh-dependencies
4. 检查网络连通性
确保开发环境可以访问https://maven.minecraftforge.net,若处于受限网络环境,需配置代理或调整防火墙规则。
内容的提问来源于stack exchange,提问作者Creeper39x
相关产品推荐
相关产品推荐

