Jump to content

Compiling a mod which was decompiled


rinart73

Recommended Posts

I used many decompiler tools but I always got something like

this.renderEngine.func_110577_a(this.field_111273_g);

And when I trying to compile, compiler can't find this methods in forge or minecraft ofcourse.

So, what I need to do to get normal method and variable names?

 

Mod is Thaumcraft (no open source, but decompiling and editing is legal)

Link to comment
Share on other sites

GUI Version of BON:

 

An error has occurred - give immibis this stack trace (which has been copied to the clipboard)

 

java.lang.Exception: conf/packaged.srg not found in Forge jar file

    at immibis.bon.gui.NewGUI$11.run(NewGUI.java:676)

 

What folder should I use?

I tried following the tips but got this error.

 

Also I can't get MCP for 1.8.9

Link to comment
Share on other sites

You can either add the mod as a dependency via Gradle (the MDK's build.gradle links these pages explaining how to do this) or add the source code of its API to your project (i.e. put it in src/api/java) and add the mod itself to your development environment's mods folder. Baubles is usually used the latter way.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

I really need the first one.

 

But there is a problem with gradle. I can't use

runtime fileTree(dir: 'libs', include: '*.jar')

because of

classpath 'net.minecraftforge.gradle:ForgeGradle:2.1-SNAPSHOT'

 

And there is no instruction on that two pages to help me use both maven and local drive.

Link to comment
Share on other sites

Anything in the libs directory is automatically included as a dependency, you don't need to explicitly add it.

 

Project dependencies (mods, libraries, etc.) go in the root

dependencies

block. Buildscript dependencies (like ForgeGradle) go in the

buildscript.dependencies

block.

 

Maven and local dependencies don't affect each other at all. To add a dependency from Maven, add the Maven repository to

repositories

and add the dependency to

dependencies

. To add a local dependency, just add it to

dependencies

.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

Anything in the libs directory is automatically included as a dependency, you don't need to explicitly add it.

Nope, I tried. Gradle don't see it when compiling.

 

Maven and local dependencies don't affect each other at all.

buildscript {

    repositories {

        jcenter()

        maven {

            name = "forge"

            url = "http://files.minecraftforge.net/maven"

        }

    }

    dependencies {

        classpath 'net.minecraftforge.gradle:ForgeGradle:2.1-SNAPSHOT'

runtime 'libs/Baubles-1.8.9-1.1.3.0.jar'

    }

}

=>

FAILURE: Build failed with an exception.

 

* Where:

Build file 'D:\workspace\forge-1.8.9-11.15.0.1710-mdk\build.gradle'

line: 13

 

* What went wrong:

A problem occurred evaluating root project 'forge-1.8.9-11.15.0.1710-mdk'.

> Could not find method runtime() for arguments [libs/Baubles-1.8.9-1.1.3.0.jar]

on org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler_

Decorated@1a51d00.

Link to comment
Share on other sites

Project dependencies (mods, libraries, etc.) go in the root

dependencies

block. Buildscript dependencies (like ForgeGradle) go in the

buildscript.dependencies

block.

 

You're trying to add project dependencies (things used by your mod) as buildscript dependencies (things used to build your mod).

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

No, all of your dependencies should be handled through Gradle. Gradle will then add these to your IDE project.

 

You can refresh the project from IDEA's Gradle window to update the project (including dependencies) from build.gradle.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

Ok. And the if there any imports of jars such as sun.misc (some java thing), where to get it? I don't think that it's a good idea to mix up Java with OpenJDK (sun.misc is exists in openjdk).

 

And I'm very sorry for giving you (and myself) this headache. I reallly don't like JAVA actually. I just need to edit 1 thing in that mod.

Link to comment
Share on other sites

runtime files('libs/Baubles-1.8.9-1.1.3.0.jar')

 

error: package baubles.api does not exist

 

I'm sure that baubles.api is in the that jar.

 

Where I need to place libs folder? ForgeGradle root? Or FGroot/src? I tried both


What about sun.misc... I misreaded, it was not error, but warning.

Link to comment
Share on other sites

runtime

is for dependencies that you don't need to compile against.

compile

is for dependencies that you do need to compile against.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

compile

means that it's a compile-time dependency, i.e. the classes are used in your code and need to exist at compile-time so the compiler knows about them. It doesn't actually compile the dependency.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.