• Forge论坛

导航页

  • 主页
  • 向这篇文档做出贡献
  • 入门
    • 概述
  • 配置选项
    • 概述
    • 运行配置
    • 进阶主题
  • 依赖
    • 概述
    • Jar-in-Jar
  • 移植到当前版本
    • 添加Foojay Toolchains插件
    • 将Gradle升级到8.1.1
    • 更新ForgeGradle插件版本
    • 从运行配置中移除forceExit

ForgeGradle 5 -> 6 迁移入门

这是一个关于如何将你的构建脚本从ForgeGradle 5迁移到6的高级、非详尽的概述。

如果有任何不正确或遗漏的信息,请在下面留言。谢谢!

添加Foojay Toolchains插件

Gradle现在使用Foojay Toolchains插件以管理Java工具链。必须将插件添加到settings.gradle[.kts]中:

使用Gradle DSL:

// 在settings.gradle中
plugins {
    id 'org.gradle.toolchains.foojay-resolver-convention' version '0.5.0'
}

使用Kotlin DSL:

// 在settings.gradle.kts中
plugins {
    id("org.gradle.toolchains.foojay-resolver-convention") version "0.5.0"
}

将Gradle升级到8.1.1

首先,你需要更新Gradle Wrapper以使用8.1.1。你可以在Gradle的迁移指南上找到有关从7迁移到8的其他信息。

这可以通过以下两种方式之一实现:

gradle wrapper

首选选项是将gradle wrapper命令与--gradle-version选项一起使用。

# 在Gradle项目的根目录内部
./gradlew wrapper --gradle-version=8.1.1

gradle-wrapper.properties

不建议使用此方法,并且只有在上面的gradlew wrapper命令失败时才应使用此方法。

更新gradle/wrapper/gradle-wrapper.properties中的distributionUrl属性中的版本。然后运行./gradlew wrapper。

distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip

更新ForgeGradle插件版本

更新Gradle后,将build.gradle[.kts]中的ForgeGradle版本更新为[6.0,6.2):

使用Gradle DSL:

// 在build.gradle中
plugins {
    id 'net.minecraftforge.gradle' version '[6.0,6.2)'
}

使用Kotlin DSL:

// 在build.gradle.kts中
plugins {
    id("net.minecraftforge.gradle") version "[6.0,6.2)"
}

从运行配置中移除forceExit

ForgeGradle现已删除运行配置中的forceExit属性。对运行任务的更改仅适用于当前项目,不适用于任何子项目。

次要的添加、变更和移除

重新混淆的Classpath继承

如果你在reobf*任务配置中使用classpath.from来声明额外的库,则需要考虑reobf*任务;它应该迁移到libraries.from属性。

Eclipse启动器组(Launcher Groups)

如果ForgeGradle的设置使得Eclipse应该在开始游戏之前运行Gradle任务,那么你必须从Launch Group文件夹执行运行配置。只有在minecraft块中启用了新属性时,情况才会如此。

Eclipse启动组演示

ModConfig中resources和classes的移除

运行配置的mods块中的属性resources和classes已从ForgeGradle 6中移除。

Built with MkDocs using a custom theme. Hosted by Read the Docs.
Enable Dark Theme