eclipse中有三个语法错误

时间:2016-08-22 11:55:41

标签: java eclipse syntax-error minecraft eventhandler

我刚刚开始编码,现在我正在学习一个教程。我按照教程中的确切步骤将任何变量更改为我使用的变量。 "示例: PutNAMEHERE MyNAME "

这是教程: http://bedrockminer.jimdo.com/modding-tutorials/basic-modding-1-7/proxies/

我有三个语法错误。

这是给出错误的代码:

@EventHandler
public void postInit(FMLPostInitializationEvent e) {
proxy.postInit (e);
}

错误是:

*Multiple markers at this line
- Syntax error on token(s), misplaced construct(s)
- Syntax error, insert "enum Identifier" to complete 
 EnumHeader
- Syntax error on token "void", @ expected

在发布此问题之前,我做了一些研究。我认为这些错误可能有一般性修复,但对大多数人来说似乎有所不同。

编辑:

这是整个代码:

package com.loenabelle.ZAWAM;

import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.Mod.Instance;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;

@Mod(modid = Main.MODID, name = Main.MODNAME, version = Main.VERSION)
public class Main {

    public static final String MODID = "ZAWAM";
    public static final String MODNAME = "TZAWAM";
    public static final String VERSION = "1.0.0";

    @Instance
    public static Main instance = new Main();


    @EventHandler
    public void preInit1(FMLPreInitializationEvent e) {

    }

    @EventHandler
    public void init1(FMLInitializationEvent e) {

    }

    @EventHandler
    public void postInit(FMLPostInitializationEvent e) {
       //added a 1 to all but one init//         
    }
}

@SidedProxy(clientSide="com.loenabelle.ZAWAM.ClientProxy", serverSide="com.loenabelle.ZAWAM.ServerProxy") 
public static CommonProxy proxy;

@EventHandler
public void preInit(FMLPreInitializationEvent e) {
    proxy.preInit(e);
}

@EventHandler
public void init(FMLInitializationEvent e) {
    proxy.init(e);
}

@EventHandler
public void postInit(FMLPostInitializationEvent e) {
    proxy.postInit (e);
    //continue and try to fix this later
}

1 个答案:

答案 0 :(得分:0)

上面代码中的错误是在" @ SidedProxy"之前发生的结束大括号。到那时为止,一切都在班级Main内。这个花括号结束了这个课程。此结束括号之后的代码根本不在任何类中,这对于方法声明等是非法的。几乎Java中的所有内容都必须在一个类中。

Eclipse执行基本匹配括号 - 如果将光标放在类(Main {)的左大括号上,则Eclipse将突出显示结束类的大括号。 (这适用于所有匹配大括号。)