1+ buildscript {
2+ repositories {
3+ maven { url = ' https://files.minecraftforge.net/maven' }
4+ jcenter()
5+ mavenCentral()
6+ }
7+ dependencies {
8+ classpath group : ' net.minecraftforge.gradle' , name : ' ForgeGradle' , version : ' 3.+' , changing : true
9+ }
10+ }
11+ apply plugin : ' net.minecraftforge.gradle'
12+ // Only edit below this line, the above code adds and enables the necessary things for Forge to be setup.
13+ apply plugin : ' eclipse'
14+ apply plugin : ' maven-publish'
15+
16+ // TODO add AppleSkin to build environment once compatible with 1.16.5
17+ repositories {
18+ maven {
19+ // location of the maven that hosts JEI files
20+ name = " Progwml6 maven"
21+ url = " https://dvs1.progwml6.com/files/maven/"
22+ }
23+ maven {
24+ // location of a maven mirror for JEI files, as a fallback
25+ name = " ModMaven"
26+ url = " https://modmaven.k-4u.nl"
27+ }
28+ maven { // TOP
29+ name ' tterrag maven'
30+ url " http://maven.tterrag.com/"
31+ }
32+ }
33+
34+ version = ' 0.6'
35+ group = ' com.dannyandson.nutritionalbalance' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
36+ archivesBaseName = ' nutritionalbalance'
37+ def jei_version = ' 1.16.4:7.6.1.71'
38+ def top_version = ' 1.16:1.16-3.0.6-8'
39+ sourceCompatibility = targetCompatibility = compileJava. sourceCompatibility = compileJava. targetCompatibility = ' 1.8' // Need this here so eclipse task generates correctly.
40+
41+ println (' Java: ' + System . getProperty(' java.version' ) + ' JVM: ' + System . getProperty(' java.vm.version' ) + ' (' + System . getProperty(' java.vendor' ) + ' ) Arch: ' + System . getProperty(' os.arch' ))
42+ minecraft {
43+ // The mappings can be changed at any time, and must be in the following format.
44+ // snapshot_YYYYMMDD Snapshot are built nightly.
45+ // stable_# Stables are built at the discretion of the MCP team.
46+ // Use non-default mappings at your own risk. they may not always work.
47+ // Simply re-run your setup task after changing the mappings to update your workspace.
48+ mappings channel : ' snapshot' , version : ' 20201028-1.16.3'
49+ // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
50+
51+ // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
52+
53+ // Default run configurations.
54+ // These can be tweaked, removed, or duplicated as needed.
55+ runs {
56+ client {
57+ workingDirectory project. file(' run' )
58+
59+ // Recommended logging data for a userdev environment
60+ property ' forge.logging.markers' , ' SCAN,REGISTRIES,REGISTRYDUMP'
61+
62+ // Recommended logging level for the console
63+ property ' forge.logging.console.level' , ' debug'
64+
65+ mods {
66+ examplemod {
67+ source sourceSets. main
68+ }
69+ }
70+ }
71+
72+ server {
73+ workingDirectory project. file(' runServer' )
74+
75+ // Recommended logging data for a userdev environment
76+ property ' forge.logging.markers' , ' SCAN,REGISTRIES,REGISTRYDUMP'
77+
78+ // Recommended logging level for the console
79+ property ' forge.logging.console.level' , ' debug'
80+
81+ mods {
82+ examplemod {
83+ source sourceSets. main
84+ }
85+ }
86+ }
87+
88+ data {
89+ workingDirectory project. file(' run' )
90+
91+ // Recommended logging data for a userdev environment
92+ property ' forge.logging.markers' , ' SCAN,REGISTRIES,REGISTRYDUMP'
93+
94+ // Recommended logging level for the console
95+ property ' forge.logging.console.level' , ' debug'
96+
97+ // Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources.
98+ args ' --mod' , ' nutritionalbalance' , ' --all' , ' --output' , file(' src/generated/resources/' ), ' --existing' , file(' src/main/resources/' )
99+
100+ mods {
101+ examplemod {
102+ source sourceSets. main
103+ }
104+ }
105+ }
106+ }
107+ }
108+
109+ // Include resources generated by data generators.
110+ sourceSets. main. resources { srcDir ' src/generated/resources' }
111+
112+ dependencies {
113+ // Specify the version of Minecraft to use, If this is any group other then 'net.minecraft' it is assumed
114+ // that the dep is a ForgeGradle 'patcher' dependency. And it's patches will be applied.
115+ // The userdev artifact is a special name and will get all sorts of transformations applied to it.
116+ minecraft ' net.minecraftforge:forge:1.16.5-36.0.13'
117+
118+ // You may put jars on which you depend on in ./libs or you may define them like so..
119+ // compile "some.group:artifact:version:classifier"
120+ // compile "some.group:artifact:version"
121+
122+ // Real examples
123+ // compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env
124+ // compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
125+
126+ // The 'provided' configuration is for optional dependencies that exist at compile-time but might not at runtime.
127+ // provided 'com.mod-buildcraft:buildcraft:6.0.8:dev'
128+
129+ // These dependencies get remapped to your current MCP mappings
130+ // deobf 'com.mod-buildcraft:buildcraft:6.0.8:dev'
131+
132+ // compileOnly fg.deobf("mezz.jei:jei-${jei_version}:api")
133+ runtimeOnly fg. deobf(" mezz.jei:jei-${ jei_version} " )
134+
135+ compile fg. deobf(project. dependencies. create(" mcjty.theoneprobe:TheOneProbe-${ top_version} " ) {transitive = false })
136+
137+ // For more info...
138+ // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
139+ // http://www.gradle.org/docs/current/userguide/dependency_management.html
140+
141+ }
142+
143+ // Example for how to get properties into the manifest for reading by the runtime..
144+ jar {
145+ manifest {
146+ attributes([
147+ " Specification-Title" : " nutritionalbalance" ,
148+ " Specification-Vendor" : " Danny" ,
149+ " Specification-Version" : " 1" , // We are version 1 of ourselves
150+ " Implementation-Title" : project. name,
151+ " Implementation-Version" : " ${ version} " ,
152+ " Implementation-Vendor" :" Danny" ,
153+ " Implementation-Timestamp" : new Date (). format(" yyyy-MM-dd'T'HH:mm:ssZ" )
154+ ])
155+ }
156+ }
157+
158+ // Example configuration to allow publishing using the maven-publish task
159+ // This is the preferred method to reobfuscate your jar file
160+ jar. finalizedBy(' reobfJar' )
161+ // However if you are in a multi-project build, dev time needs unobfed jar files, so you can delay the obfuscation until publishing by doing
162+ // publish.dependsOn('reobfJar')
163+
164+ publishing {
165+ publications {
166+ mavenJava(MavenPublication ) {
167+ artifact jar
168+ }
169+ }
170+ repositories {
171+ maven {
172+ url " file:///${ project.projectDir} /mcmodsrepo"
173+ }
174+ }
175+ }
0 commit comments