Три синтаксические ошибки в затмении

Я только начал писать код и сейчас следую учебному пособию. Я выполнил точные шаги в учебнике и изменил любую переменную на ту, которую использовал. "Пример: Поместите ИМЯНЕ в 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 ответ

Решение

Ошибка в приведенном выше коде - закрывающая фигурная скобка, которая встречается перед "@SidedProxy". До этого момента все внутри класса Main, Эта фигурная скобка заканчивает класс. Код после этой закрывающей скобки вообще отсутствует в каком-либо классе, что недопустимо для объявлений методов и тому подобного. Почти все в Java должно быть внутри класса.

Eclipse выполняет базовые фигурные скобки - если вы поместите курсор на открывающую фигурную скобку класса (Main {) затем Eclipse выделит фигурную скобку, которая завершает класс. (Это относится ко всем наборам соответствующих фигурных скобок.)

Другие вопросы по тегам