In this tutorial, we will be focusing on setting up our coding environment. Before we start, this is one of those parts geared for Mac users. If you run Windows, google Wuppy29, and look at his tutorial.
To start, we will need a few files. First, we will download Eclipse. Download “Eclipse IDE for Jave EE Developers”. After that has finished downloading, we will need to download Minecraft Forge. The file you need will be whatever version of Minecraft you are modding. Download the Latest Version of Forge, but you have to get the one that says "src", which stands for source. Any other version besides the src will not work.
Now that we have the files needed, create a folder on your desktop, and name it something like “Minecraft Mods”. Open the forge.zip file, and place the forge folder inside the “Minecraft Mods” folder. Open up terminal, and type “cd”, space, then drag the forge folder in and press enter. Nothing will seem to happen, but something did happen. Next, you will need to copy these commands into terminal, one at a time:
After these commands have been run successfully, Forge should be fully setup. Open up Eclipse, and a window pops up. Press Browse and navigate to your folders (forge > eclipse), and press enter. Eclipse should open up, and to the left, you will find a Minecraft folder. If you see this, you are good to go! If you don’t, leave a comment for me or others to help you.
Wanting to release a mod?
Simply type "./gradlew build" in terminal in your forge folder's directory.
It is also different to compile your mod as well. When you want to release your mod, do cd (drag your forge folder here), and then type ./gradlew build
The system is out of resources.
Consult the following stack trace for details.
java.lang.OutOfMemoryError: Java heap space
at com.sun.tools.javac.code.Scope$ImportScope.makeEntry(Scope.java:385)
at com.sun.tools.javac.code.Scope.enter(Scope.java:196)
at com.sun.tools.javac.comp.MemberEnter$2.importFrom(MemberEnter.java:198)
at com.sun.tools.javac.comp.MemberEnter$2.enterAnnotation(MemberEnter.java:203)
at com.sun.tools.javac.comp.Annotate.flush(Annotate.java:95)
at com.sun.tools.javac.comp.Annotate.enterDone(Annotate.java:87)
at com.sun.tools.javac.comp.Enter.complete(Enter.java:485)
at com.sun.tools.javac.comp.Enter.main(Enter.java:442)
at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:822)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727)
at com.sun.tools.javac.main.Main.compile(Main.java:353)
at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:115)
at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:45)
at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:38)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:96)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:49)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:35)
at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:29)
at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:20)
at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:33)
at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:24)
at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:87)
at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:65)
at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:53)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:235)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:222)
:recompMinecraft FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':recompMinecraft'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
The system is out of resources.
Consult the following stack trace for details.
java.lang.OutOfMemoryError: Java heap space
at com.sun.tools.javac.code.Scope$ImportScope.makeEntry(Scope.java:385)
at com.sun.tools.javac.code.Scope.enter(Scope.java:196)
at com.sun.tools.javac.comp.MemberEnter$2.importFrom(MemberEnter.java:198)
at com.sun.tools.javac.comp.MemberEnter$2.enterAnnotation(MemberEnter.java:203)
at com.sun.tools.javac.comp.Annotate.flush(Annotate.java:95)
at com.sun.tools.javac.comp.Annotate.enterDone(Annotate.java:87)
at com.sun.tools.javac.comp.Enter.complete(Enter.java:485)
at com.sun.tools.javac.comp.Enter.main(Enter.java:442)
at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:822)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727)
at com.sun.tools.javac.main.Main.compile(Main.java:353)
at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:115)
at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:45)
at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:38)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:96)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:49)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:35)
at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:29)
at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:20)
at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:33)
at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:24)
at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:87)
at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:65)
at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:53)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:235)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:222)
:recompMinecraft FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':recompMinecraft'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
I just ran the last two codes and they worked i have yet to try to run it on eclipse yet so i'll try it.
here is the log see if there is a difference because i just downloaded eclipse for java ee development.
/gradlew setupDecompWorkspace
./gradlew eclipse
****************************
Powered By MCP: http://mcp.ocean-labs.de/
Searge, ProfMobius, Fesh0r,
R4wk, ZeuX, IngisKahn, bspkrs
MCP Data version : unknown
****************************
:extractMcpData UP-TO-DATE
:getVersionJson
:extractUserDev UP-TO-DATE
:genSrgs SKIPPED
:extractNatives UP-TO-DATE
:getAssetsIndex
No route to host
:getAssets
:makeStart SKIPPED
:downloadMcpTools UP-TO-DATE
:downloadClient SKIPPED
:downloadServer SKIPPED
:mergeJars SKIPPED
:deobfuscateJar SKIPPED
:decompile SKIPPED
:processSources SKIPPED
:remapJar SKIPPED
:extractMinecraftSrc UP-TO-DATE
:recompMinecraft
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
:repackMinecraft
:setupDecompWorkspace
BUILD SUCCESSFUL
Total time: 1 mins 17.196 secs
jacobs-MacBook-Pro:forge-1 eagle1421$ ./gradlew eclipse
****************************
Powered By MCP: http://mcp.ocean-labs.de/
Searge, ProfMobius, Fesh0r,
R4wk, ZeuX, IngisKahn, bspkrs
MCP Data version : unknown
****************************
:eclipseClasspath
:eclipseJdt
:eclipseProject
:eclipse
BUILD SUCCESSFUL
Total time: 5.979 secs
There might be a difference. I would go ahead and use the one for EE Developers. Not sure why, probably something is in the EE one that isn't in the normal one.
To start, we will need a few files. First, we will download Eclipse. Download “Eclipse IDE for Jave EE Developers”. After that has finished downloading, we will need to download Minecraft Forge. The file you need will be whatever version of Minecraft you are modding. Download the Latest Version of Forge, but you have to get the one that says "src", which stands for source. Any other version besides the src will not work.
Now that we have the files needed, create a folder on your desktop, and name it something like “Minecraft Mods”. Open the forge.zip file, and place the forge folder inside the “Minecraft Mods” folder. Open up terminal, and type “cd”, space, then drag the forge folder in and press enter. Nothing will seem to happen, but something did happen. Next, you will need to copy these commands into terminal, one at a time:
./gradlew setupDecompWorkspace eclipse
./gradlew --refresh-dependencies
./gradlew setupDecompWorkspace --debug
./gradlew eclipse --debug
After these commands have been run successfully, Forge should be fully setup. Open up Eclipse, and a window pops up. Press Browse and navigate to your folders (forge > eclipse), and press enter. Eclipse should open up, and to the left, you will find a Minecraft folder. If you see this, you are good to go! If you don’t, leave a comment for me or others to help you.
Wanting to release a mod?
Simply type "./gradlew build" in terminal in your forge folder's directory.
Awesome!
It is also different to compile your mod as well. When you want to release your mod, do cd (drag your forge folder here), and then type ./gradlew build
Note: If you want to release a mod, simple type ./gradlew build in terminal in your forge folder's directory.
- Jabba
AAAAAWWWWW YEAHHH
Navigate to your forge folder, and open up terminal. Type "cd [drag your forge folder in here]". Then do the following commands:
./gradlew setupDecompWorkspace eclipse
./gradlew --refresh-dependencies
./gradlew setupDecompWorkspace --debug
./gradlew eclipse --debug
That will setup your dev workspace.
:recompMinecraft FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':recompMinecraft'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Try running:
./gradlew setupDecompWorkspace
./gradlew eclipse
See if those two commands work instead.
./gradlew setupDecompWorkspace
****************************
Powered By MCP:
http://mcp.ocean-labs.de/
Searge, ProfMobius, Fesh0r,
R4wk, ZeuX, IngisKahn, bspkrs
MCP Data version : unknown
****************************
:extractMcpData UP-TO-DATE
:getVersionJson
:extractUserDev UP-TO-DATE
:genSrgs SKIPPED
:extractNatives UP-TO-DATE
:getAssetsIndex
:getAssets
:makeStart SKIPPED
:downloadMcpTools UP-TO-DATE
:downloadClient SKIPPED
:downloadServer SKIPPED
:mergeJars SKIPPED
:deobfuscateJar SKIPPED
:decompile SKIPPED
:processSources SKIPPED
:remapJar SKIPPED
:extractMinecraftSrc UP-TO-DATE
:recompMinecraft
The system is out of resources.
Consult the following stack trace for details.
java.lang.OutOfMemoryError: Java heap space
at com.sun.tools.javac.code.Scope$ImportScope.makeEntry(Scope.java:385)
at com.sun.tools.javac.code.Scope.enter(Scope.java:196)
at com.sun.tools.javac.comp.MemberEnter$2.importFrom(MemberEnter.java:198)
at com.sun.tools.javac.comp.MemberEnter$2.enterAnnotation(MemberEnter.java:203)
at com.sun.tools.javac.comp.Annotate.flush(Annotate.java:95)
at com.sun.tools.javac.comp.Annotate.enterDone(Annotate.java:87)
at com.sun.tools.javac.comp.Enter.complete(Enter.java:485)
at com.sun.tools.javac.comp.Enter.main(Enter.java:442)
at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:822)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727)
at com.sun.tools.javac.main.Main.compile(Main.java:353)
at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:115)
at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:45)
at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:38)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:96)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:49)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:35)
at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:29)
at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:20)
at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:33)
at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:24)
at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:87)
at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:65)
at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:53)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:235)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:222)
:recompMinecraft FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':recompMinecraft'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 44.679 secs
No, I use Java 6 as well. Java 6 may limit you in some areas, but so far, I haven't experienced any.
:recompMinecraft
The system is out of resources.
Consult the following stack trace for details.
java.lang.OutOfMemoryError: Java heap space
at com.sun.tools.javac.code.Scope$ImportScope.makeEntry(Scope.java:385)
at com.sun.tools.javac.code.Scope.enter(Scope.java:196)
at com.sun.tools.javac.comp.MemberEnter$2.importFrom(MemberEnter.java:198)
at com.sun.tools.javac.comp.MemberEnter$2.enterAnnotation(MemberEnter.java:203)
at com.sun.tools.javac.comp.Annotate.flush(Annotate.java:95)
at com.sun.tools.javac.comp.Annotate.enterDone(Annotate.java:87)
at com.sun.tools.javac.comp.Enter.complete(Enter.java:485)
at com.sun.tools.javac.comp.Enter.main(Enter.java:442)
at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:822)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727)
at com.sun.tools.javac.main.Main.compile(Main.java:353)
at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:115)
at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:45)
at org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler.execute(Jdk6JavaCompiler.java:38)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:96)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:49)
at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:35)
at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:29)
at org.gradle.api.internal.tasks.compile.DelegatingJavaCompiler.execute(DelegatingJavaCompiler.java:20)
at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:33)
at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:24)
at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:87)
at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:65)
at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:53)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:235)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:222)
:recompMinecraft FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':recompMinecraft'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 46.055 secs
I also checked do i have to use the eclipse for Java ee developers?
here is the log see if there is a difference because i just downloaded eclipse for java ee development.
/gradlew setupDecompWorkspace
./gradlew eclipse
****************************
Powered By MCP:
http://mcp.ocean-labs.de/
Searge, ProfMobius, Fesh0r,
R4wk, ZeuX, IngisKahn, bspkrs
MCP Data version : unknown
****************************
:extractMcpData UP-TO-DATE
:getVersionJson
:extractUserDev UP-TO-DATE
:genSrgs SKIPPED
:extractNatives UP-TO-DATE
:getAssetsIndex
No route to host
:getAssets
:makeStart SKIPPED
:downloadMcpTools UP-TO-DATE
:downloadClient SKIPPED
:downloadServer SKIPPED
:mergeJars SKIPPED
:deobfuscateJar SKIPPED
:decompile SKIPPED
:processSources SKIPPED
:remapJar SKIPPED
:extractMinecraftSrc UP-TO-DATE
:recompMinecraft
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
:repackMinecraft
:setupDecompWorkspace
BUILD SUCCESSFUL
Total time: 1 mins 17.196 secs
jacobs-MacBook-Pro:forge-1 eagle1421$ ./gradlew eclipse
****************************
Powered By MCP:
http://mcp.ocean-labs.de/
Searge, ProfMobius, Fesh0r,
R4wk, ZeuX, IngisKahn, bspkrs
MCP Data version : unknown
****************************
:eclipseClasspath
:eclipseJdt
:eclipseProject
:eclipse
BUILD SUCCESSFUL
Total time: 5.979 secs
There might be a difference. I would go ahead and use the one for EE Developers. Not sure why, probably something is in the EE one that isn't in the normal one.
Your sure you didn't go to the wrong location?