Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

java.lang.NoSuchMethodError: net.minecraft.client.Minecraft.getMinecraft()Lnet/m

Featured Replies

Posted

Hey all,

 

I am trying to run some example code for item hud rendering, but when its finally called by the game, it always crashes:

 

java.lang.NoSuchMethodError: net.minecraft.client.Minecraft.getMinecraft()Lnet/minecraft/client/Minecraft;

 

What am I doing wrong? Thanks for any help!

 

 

technicly this is caused by the fact that the server calls thsi method, code please :P ?

 

 

use code tag too 

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

  • Author

Hey, I'm just using this example: http://www.minecraftforge.net/wiki/Custom_2D_Inventory_Item_Renderer

 

Also it's not running on server, since I'm connecting to my server by IP and it is still crashing.

 

Maybe it's helpful, a full error stack trace with the function commented out. Then Java can't find other methods or instances:

 

---- Minecraft Crash Report ----

// Hey, that tickles! Hehehe!

 

Time: 19.07.13 21:00

Description: Rendering screen

 

java.lang.NoSuchFieldError: instance

at tutorial.generic.DamagedItemRenderer.renderItem(DamagedItemRenderer.java:51)

at net.minecraftforge.client.ForgeHooksClient.renderInventoryItem(ForgeHooksClient.java:171)

at net.minecraft.client.renderer.entity.RenderItem.func_82406_b(RenderItem.java:465)

at net.minecraft.client.gui.inventory.GuiContainer.func_74192_a(GuiContainer.java:421)

at net.minecraft.client.gui.inventory.GuiContainer.func_73863_a(GuiContainer.java:132)

at net.minecraft.client.renderer.InventoryEffectRenderer.func_73863_a(SourceFile:31)

at net.minecraft.client.gui.inventory.GuiInventory.func_73863_a(SourceFile:49)

at net.minecraft.client.renderer.EntityRenderer.func_78480_b(EntityRenderer.java:1036)

at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:934)

at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:826)

at net.minecraft.client.main.Main.main(SourceFile:101)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at net.minecraft.launchwrapper.Launch.launch(Launch.java:57)

at net.minecraft.launchwrapper.Launch.main(Launch.java:18)

 

 

A detailed walkthrough of the error, its code path and all known details is as follows:

---------------------------------------------------------------------------------------

 

-- Head --

Stacktrace:

at tutorial.generic.DamagedItemRenderer.renderItem(DamagedItemRenderer.java:51)

at net.minecraftforge.client.ForgeHooksClient.renderInventoryItem(ForgeHooksClient.java:171)

at net.minecraft.client.renderer.entity.RenderItem.func_82406_b(RenderItem.java:465)

at net.minecraft.client.gui.inventory.GuiContainer.func_74192_a(GuiContainer.java:421)

at net.minecraft.client.gui.inventory.GuiContainer.func_73863_a(GuiContainer.java:132)

at net.minecraft.client.renderer.InventoryEffectRenderer.func_73863_a(SourceFile:31)

at net.minecraft.client.gui.inventory.GuiInventory.func_73863_a(SourceFile:49)

 

-- Screen render details --

Details:

Screen name: net.minecraft.client.gui.inventory.GuiInventory

Mouse location: Scaled: (213, 119). Absolute: (427, 240)

Screen size: Scaled: (427, 240). Absolute: (854, 480). Scale factor of 2

 

        public void renderItem(ItemRenderType type, ItemStack itemStack, Object... data) {
        	System.out.println("renderItem!!!");
           
            // ====================== Render item texture ======================
            //Icon icon = itemStack.getIconIndex();
            //renderItem.renderIcon(0, 0, icon, 16, 16);
           
            // ====================== Render OpenGL square shape ======================
            GL11.glDisable(GL11.GL_TEXTURE_2D);
            GL11.glEnable(GL11.GL_BLEND);
            GL11.glDepthMask(false);
            GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
           
            Tessellator tessellator = Tessellator.instance;
            tessellator.startDrawing(GL11.GL_QUADS);
            tessellator.setColorRGBA(0, 0, 0, 128);
            tessellator.addVertex(0, 0, 0);
            tessellator.addVertex(0, 8, 0);
            tessellator.addVertex(8, 8, 0);
            tessellator.addVertex(8, 0, 0);
            tessellator.draw();
           
            GL11.glDepthMask(true);
            GL11.glDisable(GL11.GL_BLEND);
           
            // ====================== Render text ======================
            GL11.glEnable(GL11.GL_TEXTURE_2D);
            String text = Integer.toString(itemStack.getItemDamage());
            
            /*
            FontRenderer fontRenderer = Minecraft.getMinecraft().fontRenderer;
            fontRenderer.drawStringWithShadow(text, 1, 1, 0xFFFFFF);
            */
    }

ok 1 use

code tag

 

2 try running this code inside renderItem

 

if(FMLCommonHandler.instance().getEffectiveSide().isServer()){
    try{
        throw new Exception("learning to coding is important");
    }catch(Exception e){
       e.printStackTrace();
    }
}

 

 

this would output a ton of lines, paste them in a spoiler please

 

 

 

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

  • Author

The code is not running on server.

 

System.out.println("running on server: " + FMLCommonHandler.instance().getEffectiveSide().isServer());
if(FMLCommonHandler.instance().getEffectiveSide().isServer()){
    try{
        throw new Exception("learning to coding is important");
    }catch(Exception e){
       e.printStackTrace();
    }
}

 

Client> 2013-07-19 21:35:43 [iNFO] [sTDOUT] running on server: false

 

well i doubt this will change anything, but try

 

Minecraft mc = FMLClientHandler.instance().getClient();

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

  • Author

Thanks for the try, but unfortunately that instance of Minecraft is "empty" also:

 

java.lang.NoSuchFieldError: fontRenderer
at tutorial.generic.DamagedItemRenderer.renderItem(DamagedItemRenderer.java:61)
at net.minecraftforge.client.ForgeHooksClient.renderInventoryItem(ForgeHooksClient.java:171)
at net.minecraft.client.renderer.entity.RenderItem.func_82406_b(RenderItem.java:465)
at net.minecraft.client.gui.inventory.GuiContainer.func_74192_a(GuiContainer.java:421)
at net.minecraft.client.gui.inventory.GuiContainer.func_73863_a(GuiContainer.java:132)
at net.minecraft.client.renderer.InventoryEffectRenderer.func_73863_a(SourceFile:31)
at net.minecraft.client.gui.inventory.GuiInventory.func_73863_a(SourceFile:49)
at net.minecraft.client.renderer.EntityRenderer.func_78480_b(EntityRenderer.java:1036)
at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:934)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:826)
at net.minecraft.client.main.Main.main(SourceFile:101)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:57)
at net.minecraft.launchwrapper.Launch.main(Launch.java:18)

no an "empty" minecraft would have a null pointer exception on fontRenderer whiel you get a noSuchFieldException, tottally different

 

are you using minecraft 1.6.x ? if yes they might have changed the location or name of Minecraft.fontRenderer

 

 

wait that would mean it would fail at compilation time ... not at runtime ....

if thats not it im afraid i have no idea :\

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

  • Author

Yea, it's 1.6.2. The strange thing is, that I can't access anything at all besides the GL11-methods.

 

Not working:

 

Tessellator tessellator = Tessellator.instance;

itemStack.getItemDamage()

Minecraft.getMinecraft().fontRenderer

itemStack.getIconIndex()

hmmm, if you're using eclipse, try cleaning your project (Project -> clean... )

 

if that still doesnt work, try re installing mcp/forge again and restarting

if THAT doesnt work its probably forge bug so use 1.6.1 or even 1.5.2 while this is being fixed, also, if you get to this step, report the bug to the bug board

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

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...

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.