generated from CleanroomMC/TemplateDevEnv
-
Notifications
You must be signed in to change notification settings - Fork 29
/
dependencies.gradle
197 lines (180 loc) · 13.7 KB
/
dependencies.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
//file:noinspection DependencyNotationArgument
// TODO remove when fixed in RFG ^
/*
* Add your dependencies here. Common configurations:
* - implementation("group:name:version:classifier"): if you need this for internal implementation details of the mod.
* Available at compiletime and runtime for your environment.
*
* - compileOnlyApi("g:n:v:c"): if you need this for internal implementation details of the mod.
* Available at compiletime but not runtime for your environment.
*
* - annotationProcessor("g:n:v:c"): mostly for java compiler plugins, if you know you need this, use it, otherwise don't worry
*
* - testCONFIG("g:n:v:c"): replace CONFIG by one of the above, same as above but for the test sources instead of main
*
* You can exclude transitive dependencies (dependencies of the chosen dependency) by appending { transitive = false } if needed.
*
* To add a mod with CurseMaven, replace '("g:n:v:c")' in the above with 'rfg.deobf("curse.maven:project_slug-project_id:file_id")'
* Example: implementation rfg.deobf("curse.maven:gregtech-ce-unofficial-557242:4527757")
*
* To shadow a dependency, use 'shadowImplementation'. For more info, see https://github.com/GregTechCEu/Buildscripts/blob/master/docs/shadow.md
*
* For more details, see https://docs.gradle.org/8.0.1/userguide/java_library_plugin.html#sec:java_library_configurations_graph
*/
// A hash map of curse maven mods to debug options that will enable it in runtime.
// Anything that should be handled differently than always being "compileOnly" and also being "runtimeOnly" when debug enabled
// should be handled in the main dependencies function.
// Sorted by alphabetical name of the `project.debug_[this]` value
final def mod_dependencies = [
'actually-additions-228404:3117927' : [project.debug_actually_additions],
'advancedmortars-283777:2780626' : [project.debug_adv_mortars],
'advanced-rocketry-236542:4671856' : [project.debug_advanced_rocketry],
'libvulpes-236541:3801015' : [project.debug_advanced_rocketry],
'aether-255308:3280119' : [project.debug_aether],
'alchemistry-293425:3186612' : [project.debug_alchemistry],
'alchemylib-293426:2761706' : [project.debug_alchemistry],
'shadowfacts-forgelin-248453:2785465' : [project.debug_alchemistry, project.debug_future_mc, project.debug_industrial_foregoing, project.debug_magneticraft],
'ae2-extended-life-570458:4553942' : [project.debug_applied_energistics_2, project.debug_lazy_ae2],
'arcane-archives-311357:3057332' : [project.debug_arcane_archives],
'guidebook-253874:2989594' : [project.debug_arcane_archives],
'mystical_lib-277064:3483816' : [project.debug_arcane_archives, project.debug_roots],
'astralsorcery-sorcery-241721:3044416' : [project.debug_astral],
'baubles-227083:2518667' : [project.debug_astral, project.debug_botania, project.debug_botania_tweaks, project.debug_botanic_additions, project.debug_essentialcraft_4, project.debug_extra_botany, project.debug_thaum],
'the-aurorian-352137:4981736' : [project.debug_aurorian],
'avaritia_1_10-261348:3143349' : [project.debug_avaritia],
'atum-2-59621:3116599' : [project.debug_atum],
'bwm-core-294335:2624990' : [project.debug_better_with_mods],
'bwm-suite-246760:3289033' : [project.debug_better_with_mods],
'blood-magic-224791:2822288' : [project.debug_blood_magic],
'guide-api-228832:2645992' : [project.debug_blood_magic, project.debug_woot],
'botania-225643:3330934' : [project.debug_botania, project.debug_botania_tweaks, project.debug_botanic_additions, project.debug_extra_botany],
'botania-tweaks-295114:3092102' : [project.debug_botania_tweaks],
'botanic-additions-310637:2939405' : [project.debug_botanic_additions],
'hammer-lib-247401:5259462' : [project.debug_botanic_additions],
'calculator-225104:2847174' : [project.debug_calculator],
'sonar-core-239418:2645156' : [project.debug_calculator],
'chisel-235279:2915375' : [project.debug_chisel],
'ctm-267602:2915363' : [project.debug_chisel],
'compact-machines-224218:2707509' : [project.debug_compact_machines],
'cyclic-239286:4075832' : [project.debug_cyclic],
'brandons_core-231382:3408276' : [project.debug_draconic_evolution],
'draconic_evolution-223565:3431261' : [project.debug_draconic_evolution],
'redstone_flux-270789:2920436' : [project.debug_draconic_evolution, project.debug_thermal],
'essentialcraft-4-unofficial-254817:5416404' : [project.debug_essentialcraft_4],
'dummycore-unofficial-266491:2611426' : [project.debug_essentialcraft_4],
'cyclops-core-232758:3159497' : [project.debug_evilcraft, project.debug_integrated_dynamics],
'evilcraft-74610:2811267' : [project.debug_evilcraft],
'cucumber-272335:2645867' : [project.debug_extended_crafting, project.debug_mystical_agriculture],
'extended-crafting-nomifactory-edition-398267:3613140': [project.debug_extended_crafting],
'extrabotany-299086:3112313' : [project.debug_extra_botany],
'extra-utilities-2-225561:2678374' : [project.debug_extra_utilities_2],
'forestry-59751:2918418' : [project.debug_forestry],
'future-mc-310059:5626387' : [project.debug_future_mc],
'horse-power-270466:2705433' : [project.debug_horse_power],
'llibrary-243298:2504999' : [project.debug_ice_and_fire_old, project.debug_ice_and_fire_rotn],
'immersive_engineering-231951:2974106' : [project.debug_immersive_engineering, project.debug_immersive_petroleum, project.debug_immersive_technology],
'immersive-petroleum-268250:3382321' : [project.debug_immersive_petroleum],
'mct-immersive-technology-359407:5108047' : [project.debug_immersive_technology],
'tesla-core-lib-254602:3438487' : [project.debug_industrial_foregoing],
'industrialforegoing-266515:2745321' : [project.debug_industrial_foregoing],
'inspirations-284007:2843007' : [project.debug_inspirations],
'mantle-74924:2713386' : [project.debug_inspirations, project.debug_tinkers],
'common-capabilities-247007:3053017' : [project.debug_integrated_dynamics],
'integrated-dynamics-236307:3159505' : [project.debug_integrated_dynamics],
'lazy-ae2-322347:3254160' : [project.debug_lazy_ae2],
'libnine-322344:3509087' : [project.debug_lazy_ae2],
'magneticraft-224808:3791484' : [project.debug_magneticraft],
'modelloader-277663:2744735' : [project.debug_magneticraft],
'mekanism-268560:2835175' : [project.debug_mekanism],
'mystical_agriculture-246640:2704562' : [project.debug_mystical_agriculture],
'natures-aura-306626:2882138' : [project.debug_natures_aura],
'packmode-278398:2567799' : [project.debug_packmode],
'primal-tech-290612:2801696' : [project.debug_primal_tech],
'pneumaticcraft-repressurized-281849:2978408' : [project.debug_pneumaticcraft],
'projecte-226410:2702991' : [project.debug_projecte],
'athenaeum-284350:4633750' : [project.debug_pyrotech],
'pyrotech-306676:4956838' : [project.debug_pyrotech],
'random-things-59816:2905241' : [project.debug_random_things],
'mystical_world-282940:3460961' : [project.debug_roots],
'patchouli-306770:3162874' : [project.debug_roots, project.debug_natures_aura, project.debug_prodigytech],
'prodigytech-297414:2769520' : [project.debug_prodigytech],
'roots-246183:3905074' : [project.debug_roots],
'rustic-256141:3107974' : [project.debug_rustic],
'silents-gems-220311:2804966' : [project.debug_silents_gems],
'silents-lib-242998:2851111' : [project.debug_silents_gems],
'reborncore-237903:3330308' : [project.debug_tech_reborn],
'techreborn-233564:2966851' : [project.debug_tech_reborn],
'thaumcraft-223628:2629023' : [project.debug_thaum],
'cofh_core-69162:2920433' : [project.debug_thermal],
'cofh_world-271384:2920434' : [project.debug_thermal],
'thermal_expansion-69163:2926431' : [project.debug_thermal],
'thermal_foundation-222880:2926428' : [project.debug_thermal],
'constructs-armory-287683:3174535' : [project.debug_tinkers],
'tinkers-complement-272671:2843439' : [project.debug_tinkers],
'tinkers_construct-74072:2902483' : [project.debug_tinkers],
'woot-244049:2712670' : [project.debug_woot],
]
dependencies {
embed "org.apache.groovy:groovy:${project.groovy_version}"
// TODO: check if there is anything to exclude
specialEmbed "io.github.classgraph:classgraph:4.8.165"
// have to include compileOnly for if any mods we're adding compat for shade an older version of classgraph, such as Reborn Core.
compileOnly "io.github.classgraph:classgraph:4.8.165"
specialEmbed("org.eclipse.lsp4j:org.eclipse.lsp4j:0.20.1") {
exclude group: 'com.google.guava', module: 'guava'
exclude group: 'com.google.code.gson', module: 'gson'
}
specialEmbed("org.eclipse.lsp4j:org.eclipse.lsp4j.jsonrpc:0.20.1") {
exclude group: 'com.google.guava', module: 'guava'
exclude group: 'com.google.code.gson', module: 'gson'
}
api "codechicken:codechickenlib:3.2.3.358"
// api "gregtech:gregtech:2.8.10-beta", { transitive false }
// compiles all mods, and selectively enables mods being debugged
mod_dependencies.entrySet().forEach {
def mod = rfg.deobf('curse.maven:' + it.key)
compileOnly mod
if (it.value.any { it.toBoolean() }) {
runtimeOnly mod
}
}
if (project.debug_thaum.toBoolean()) {
runtimeOnly 'curse.maven:thaumic_jei-285492:2705304'
}
compileOnly 'com.enderio:endercore:0.5.78'
compileOnly 'crazypants:enderio:5.3.72'
if (project.debug_enderio.toBoolean()) {
runtimeOnly 'com.enderio:endercore:0.5.78'
runtimeOnly 'crazypants:enderio:5.3.72'
}
// WARNING: rotn must be placed before normal, otherwise you will not be able to properly detect sources for the LightningForge
compileOnly rfg.deobf('curse.maven:ice-and-fire-rotn-edition-457668:5738729')
compileOnly rfg.deobf('curse.maven:iceandfire-264231:2939529')
if (project.debug_ice_and_fire_rotn.toBoolean()) {
runtimeOnly rfg.deobf('curse.maven:ice-and-fire-rotn-edition-457668:5738729')
} else if (project.debug_ice_and_fire_old.toBoolean()) {
runtimeOnly rfg.deobf('curse.maven:iceandfire-264231:2939529')
}
// WARNING: experimental must be placed before classic, otherwise you will crash when debugging either. Check FluidGenerator compat to confirm
compileOnly rfg.deobf('curse.maven:industrialcraft_experimental-242638:3838713')
compileOnly rfg.deobf('curse.maven:industrialcraft_classic-242942:3093607')
if (project.debug_industrial_craft_2_experimental.toBoolean()) {
runtimeOnly rfg.deobf('curse.maven:industrialcraft_experimental-242638:3838713')
} else if (project.debug_industrial_craft_2_classic.toBoolean()) {
runtimeOnly rfg.deobf('curse.maven:industrialcraft_classic-242942:3093607')
}
if (project.debug_forestry.toBoolean()) {
runtimeOnly rfg.deobf('curse.maven:jei-bees-248370:2490058')
}
if (project.debug_immersive_petroleum.toBoolean()) {
runtimeOnly rfg.deobf('curse.maven:just-enough-petroleum-291727:2549332')
}
if (project.debug_pyrotech.toBoolean()) {
runtimeOnly rfg.deobf("curse.maven:dropt-284973:3758733")
}
compileOnly rfg.deobf('TechReborn:TechReborn-ModCompatibility-1.12.2:1.4.0.76:universal')
if (project.debug_tech_reborn.toBoolean()) {
runtimeOnly rfg.deobf('TechReborn:TechReborn-ModCompatibility-1.12.2:1.4.0.76:universal')
}
runtimeOnly 'com.cleanroommc:strip-latest-forge-requirements:1.0'
}