跳到主要内容

如果你因为网络问题实在没办法完成构建

yhz_cake
yhz_cake
一句

好吧,这其实应该是常态,这里将会给出一个经试验大概率可行的解决办法。

1.在build.gradle中:

repositories {
maven { url 'https://maven.aliyun.com/repository/public' }
maven { url 'https://maven.aliyun.com/repository/central' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/repository/releases' }
mavenCentral()
maven { url 'https://maven.neoforged.net/releases' }
maven { url 'https://maven.minecraftforge.net/' }
maven { url 'https://libraries.minecraft.net/' }
}

2.在gradle-wrapper.properties中:

distributionUrl=https\://maven.aliyun.com/repository/public/gradle-{你原本的gradle版本}-bin.zip

distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-{你原本的gradle版本}-bin.zip

3.在settings.gradle中:

pluginManagement {
repositories {
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/public' }
gradlePluginPortal()
}
}

plugins {
id 'org.gradle.toolchains.foojay-resolver-convention' version '1.0.0'
}

dependencyResolutionManagement {
repositories {
maven { url 'https://maven.aliyun.com/repository/public' }
maven { url 'https://maven.aliyun.com/repository/central' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/spring' }
maven { url 'https://maven.aliyun.com/repository/spring-plugin' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/repository/releases' }
mavenCentral()
gradlePluginPortal()
}
}

4.新建init.gradle文件,内容如下:

allprojects {
repositories {
def aliyunPublic = 'https://maven.aliyun.com/repository/public'
def aliyunCentral = 'https://maven.aliyun.com/repository/central'
def aliyunGradlePlugin = 'https://maven.aliyun.com/repository/gradle-plugin'
def aliyunGoogle = 'https://maven.aliyun.com/repository/google'
def aliyunJcenter = 'https://maven.aliyun.com/repository/jcenter'
def aliyunReleases = 'https://maven.aliyun.com/repository/releases'
def aliyunSpring = 'https://maven.aliyun.com/repository/spring'
def aliyunSpringPlugin = 'https://maven.aliyun.com/repository/spring-plugin'

all { ArtifactRepository repo ->
if (repo instanceof MavenArtifactRepository) {
def url = repo.url.toString()
if (url.startsWith('https://repo1.maven.org/maven2/') ||
url.startsWith('https://repo.maven.apache.org/maven2/')) {
project.logger.lifecycle "Repository ${repo.url} replaced by ${aliyunCentral}"
remove repo
}
}
}

maven { url aliyunPublic }
maven { url aliyunCentral }
maven { url aliyunGradlePlugin }
maven { url aliyunGoogle }
maven { url aliyunJcenter }
maven { url aliyunReleases }
maven { url aliyunSpring }
maven { url aliyunSpringPlugin }
mavenCentral()
maven { url 'https://maven.neoforged.net/releases' }
maven { url 'https://maven.minecraftforge.net/' }
maven { url 'https://libraries.minecraft.net/' }
}
}

gradle.allprojects { project ->
project.buildscript {
repositories {
def aliyunPublic = 'https://maven.aliyun.com/repository/public'
def aliyunCentral = 'https://maven.aliyun.com/repository/central'
def aliyunGradlePlugin = 'https://maven.aliyun.com/repository/gradle-plugin'
def aliyunGoogle = 'https://maven.aliyun.com/repository/google'
def aliyunJcenter = 'https://maven.aliyun.com/repository/jcenter'
def aliyunReleases = 'https://maven.aliyun.com/repository/releases'

all { ArtifactRepository repo ->
if (repo instanceof MavenArtifactRepository) {
def url = repo.url.toString()
if (url.startsWith('https://repo1.maven.org/maven2/') ||
url.startsWith('https://repo.maven.apache.org/maven2/')) {
project.logger.lifecycle "Repository ${repo.url} replaced by ${aliyunCentral}"
remove repo
}
}
}

maven { url aliyunPublic }
maven { url aliyunCentral }
maven { url aliyunGradlePlugin }
maven { url aliyunGoogle }
maven { url aliyunJcenter }
maven { url aliyunReleases }
mavenCentral()
maven { url 'https://maven.neoforged.net/releases' }
maven { url 'https://maven.minecraftforge.net/' }
maven { url 'https://libraries.minecraft.net/' }
}
}
}

settingsEvaluated { settings ->
settings.pluginManagement {
repositories {
def mavenAliyunPublic = 'https://maven.aliyun.com/repository/public'
def mavenAliyunGradlePlugin = 'https://maven.aliyun.com/repository/gradle-plugin'

maven { url mavenAliyunPublic }
maven { url mavenAliyunGradlePlugin }
gradlePluginPortal()
}
}
}

yhz_cake向NeoForge1.21Tutorial-第二章补充于2026年4月3日

MakerTechno单独提取为附加文章于2026年4月4日

Copyright © 2026 yhz_cake. 保留所有权利。

在明确注明原文出处(包括作者名与原始链接)的前提下,允许非商业性地引用本作品片段。引用内容不得超过原文的 20%,不得歪曲原意或用于误导性语境。整篇转载或复制使用需获得作者授权。本网站所有教程不允许商用,也不会授予商用授权。