This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| loom:datagen [2022/09/16 15:14] – created shedaniel | loom:datagen [2023/12/26 00:58] (current) – fix merging hyphens juuz | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Data Generators ====== | + | ====== |
| + | |||
| + | **NOTE:** This is **only** for Forge projects! Data Generators are still in development for Architectury projects. Fabric projects can follow Fabric Loom documentation. | ||
| + | |||
| + | To make Data Generators work, we first need to add the src/ | ||
| + | |||
| + | We will first define where the generated folder is, so we can reuse it: | ||
| + | <code groovy> | ||
| + | def generatedResources = file(" | ||
| + | </ | ||
| + | |||
| + | And, we will add it to the main source set, the one we use for launching Minecraft, so that our generated resources can be present in-game and the production artifacts: | ||
| + | |||
| + | <code groovy> | ||
| + | sourceSets { | ||
| + | main { | ||
| + | resources.srcDir generatedResources | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Then, we can add our data generator run configuration: | ||
| + | |||
| + | <code groovy> | ||
| + | loom { | ||
| + | runs { | ||
| + | data { | ||
| + | data() | ||
| + | programArgs " | ||
| + | programArgs " | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Refresh Gradle, and you are done! | ||
| + | |||
| + | If you wish to add more arguments (like '' | ||
| + | |||
| + | <code groovy> | ||
| + | loom { | ||
| + | runs { | ||
| + | data { | ||
| + | programArgs " | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== Legacy dataGen() function ===== | ||
| + | |||
| + | **The legacy dataGen() block has been deprecated and may not function properly in future versions of Loom** | ||
| + | |||
| + | The Loom DSL for Forge Data Generators was deprecated due to its low customisability and relatively ease of manually configuring it in the project’s build.gradle. The documentation | ||
| + | below is included mostly as a historical reference. | ||
| Data Generators Support has been added to Architectury Loom, starting from 0.6.55, this is how you declare it: | Data Generators Support has been added to Architectury Loom, starting from 0.6.55, this is how you declare it: | ||
| Line 13: | Line 67: | ||
| Run '' | Run '' | ||
| - | Architectury Loom automatically adds the following arguments: '' | + | Architectury Loom automatically adds the following arguments: '' |
| <code groovy> | <code groovy> | ||
| Line 25: | Line 79: | ||
| </ | </ | ||
| - | **NOTE:** Data Generators are still in development for architectury / fabric projects, this is **only** for Forge projects! | ||