2

私は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」が別のクラスにリダイレクトされるようにしようとしています。

4

2 に答える 2

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

エラーは、そのようなコンストラクターが存在しないことを示しています。

オプションは2つだけです

Packet2ClientProtocol.Packet2ClientProtocol(int,String,int)
Packet2ClientProtocol.Packet2ClientProtocol()
于 2013-01-13T03:42:52.637 に答える
1

Packet2ClientProtocolコンストラクターの呼び出しが既知のコンストラクターと一致しないため、Javaコンパイラーはオブジェクトを構築できないことを通知しています。

具体的には、コンパイラーは2つのコンストラクターを検出しました。

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

しかし、あなたの呼び出し:

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

それらのどれにも一致しません。

于 2013-01-13T03:44:12.100 に答える