Posted February 26, 20196 yr The mod I'm updating to 1.13.2 compiles but throws NoSuchMethodError on the first call to Minecraft.getInstance(). java.lang.NoSuchMethodError: net.minecraft.client.Minecraft.getInstance()Lnet/minecraft/client/Minecraft; I'm running the mod using release 1.13.2-forge-25.0.50. I'm assuming this is a build issue. My build.gradle is: buildscript { repositories { maven { url = 'https://files.minecraftforge.net/maven' } jcenter() mavenCentral() } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true classpath 'com.github.jengelman.gradle.plugins:shadow:4.0.4' } } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'com.github.johnrengelman.shadow' version = "1.13-2-25.0.50" group = "com.shiny.joypadmod" archivesBaseName = "JoypadMod" sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' // Need this here so eclipse task generates correctly. allprojects { repositories { jcenter() maven { url "https://jitpack.io" } } } minecraft { mappings channel: 'snapshot', version: '20180921-1.13' runs { client { workingDirectory project.file('run') // Recommended logging data for a userdev environment property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' // Recommended logging level for the console property 'forge.logging.console.level', 'debug' mods { joypadmod { source sourceSets.main } } } server { workingDirectory project.file('run') // Recommended logging data for a userdev environment property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' // Recommended logging level for the console property 'forge.logging.console.level', 'debug' mods { joypadmod { source sourceSets.main } } } } } dependencies { minecraft 'net.minecraftforge:forge:1.13.2-25.0.50' implementation 'org.lwjgl.lwjgl:lwjgl:2.+' implementation 'com.github.strikerx3:jxinput:0.8' } jar { manifest { attributes([ "Specification-Title": "JoypadMod", "Specification-Vendor": "JoypadMod", "Specification-Version": "1.13-2-25.0.50", // We are version 1 of ourselves "Implementation-Title": project.name, "Implementation-Version": "${version}", "Implementation-Vendor" :"JoypadMod", "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") ]) } } shadowJar { classifier = "" dependencies { include dependency("org.lwjgl.lwjgl:lwjgl:2.+") include dependency("com.github.strikerx3:jxinput:0.8") } } tasks.build.dependsOn shadowJar I tried adding reobf to the shadow jar, but the build then fails with a mapping error: "No value has been specified for property 'mappings'." The reobf tasks are as follows: reobf { shadowJar {} } tasks.build.dependsOn reobfShadowJar Edited February 26, 20196 yr by The_Jackal
February 26, 20196 yr Author I was missing Minecraft as a dependency in the mods.toml file. I took the #optional too literally Adding minecraft as a dependency in the mods.toml file didn't help. It's something to do with adding the shadowJar task, because when I remove it, I can call Minecraft.getInstance(), but I can't get to the classes I need to shadow. Edited February 26, 20196 yr by The_Jackal
February 26, 20196 yr Why are you using LWJGL 2? Minecraft updated to LWJGL 3 in 1.13. Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support. 1.12 -> 1.13 primer by williewillus. 1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support. http://www.howoldisminecraft1710.today/
February 26, 20196 yr 56 minutes ago, The_Jackal said: Thanks will update. You shouldn't even have had that in the beginning, remove it. How are you building your mod? Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support. 1.12 -> 1.13 primer by williewillus. 1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support. http://www.howoldisminecraft1710.today/
February 26, 20196 yr Author Using gradlew build. This is similar to how the mod was built for 1.12.2 but it just used a shade configuration and included those dependencies directly. If I don't use shadow, then Minecraft.getInstance() works at runtime, but calls the the jxinput fail. As soon as I add the shadowJar task, Minecraft.getInstance() fails, almost like I'm getting a different version of Minecraft on the classpath.
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.