错误:找不到合适的构造函数

我是java新手,我正在尝试为Minecraft制作一个mod,但我无法弄清楚如何解决这个错误:

src\minecraft\net\minecraft\src\ThreadConnectToServer.java:39: error: no suitabl e constructor found for Packet2ClientProtocol(int,Minecraft,String,String,int) GuiConnecting.getNetClientHandler(this.connectingGui).addToSendQueue (new Packet2ClientProtocol(51, GuiConnecting.func_74254_c(this.connectingGui), t his.Username, this.ip, this.port)); ^ constructor Packet2ClientProtocol.Packet2ClientProtocol(int,String,int) is n ot applicable (actual and formal argument lists differ in length) constructor Packet2ClientProtocol.Packet2ClientProtocol() is not applicable (actual and formal argument lists differ in length) 1 error 

这是我的代码:

 package net.minecraft.src; import java.net.ConnectException; import java.net.UnknownHostException; public class ThreadConnectToServer extends Thread { /** The IP address or domain used to connect. */ final String ip; /** The port used to connect. */ final int port; /** A reference to the GuiConnecting object. */ final GuiConnecting connectingGui; final String Username; ThreadConnectToServer(GuiConnecting par1GuiConnecting, String par2Str, int par3) { this.connectingGui = par1GuiConnecting; this.ip = par2Str; this.port = par3; String Username = Info.Username; } public void run() { try { GuiConnecting.setNetClientHandler(this.connectingGui, new NetClientHandler(GuiConnecting.func_74256_a(this.connectingGui), this.ip, this.port)); if (GuiConnecting.isCancelled(this.connectingGui)) { return; } GuiConnecting.getNetClientHandler(this.connectingGui).addToSendQueu(new Packet2ClientProtocol(51, GuiConnecting.func_74254_c(this.connectingGui), this.Username, this.ip, this.port)); } catch (UnknownHostException var2) { if (GuiConnecting.isCancelled(this.connectingGui)) { return; } GuiConnecting.func_74249_e(this.connectingGui).displayGuiScreen(new GuiDisconnected("connect.failed", "disconnect.genericReason", new Object[] {"Unknown host \'" + this.ip + "\'"})); } catch (ConnectException var3) { if (GuiConnecting.isCancelled(this.connectingGui)) { return; } GuiConnecting.func_74250_f(this.connectingGui).displayGuiScreen(new GuiDisconnected("connect.failed", "disconnect.genericReason", new Object[] {var3.getMessage()})); } catch (Exception var4) { if (GuiConnecting.isCancelled(this.connectingGui)) { return; } var4.printStackTrace(); GuiConnecting.func_74251_g(this.connectingGui).displayGuiScreen(new GuiDisconnected("connect.failed", "disconnect.genericReason", new Object[] {var4.toString()})); } } } 

这有什么问题我试图让它成为字符串“Username”重定向到另一个类。

Java编译器告诉您无法构造Packet2ClientProtocol对象,因为您对构造函数的调用与任何已知的构造函数都不匹配。

具体来说,编译器找到了两个构造函数:

 Packet2ClientProtocol.Packet2ClientProtocol(int,String,int) Packet2ClientProtocol.Packet2ClientProtocol() 

但你打电话给:

 new Packet2ClientProtocol(51, GuiConnecting.func_74254_c(this.connectingGui), this.Username, this.ip, this.port) 

不匹配他们。

 new Packet2ClientProtocol(51, GuiConnecting.func_74254_c(this.connectingGui), this.Username, this.ip, this.port) 

该错误表明这样的构造函数不存在。

只有2个选项

 Packet2ClientProtocol.Packet2ClientProtocol(int,String,int) Packet2ClientProtocol.Packet2ClientProtocol()