Почему не работает лист?

jopi

Попрошайка
1,421
30
260
в классе claz.class вызываю register, если возвращается true в логе пишется ok reg: true
далее я высылаю евент test по классам(т.е. только по claz.class тк он зареган)
но размер листа = 0, какого черта тут такое происходит, рефлексия работает на о#####сь, invoke не работает, а сейчас даже в лист обьект не засовывается...
EventBus.class:
private List<Object> listeners = new ArrayList<Object>();
public boolean register(Object obj) {
    if (!this.listeners.contains(obj)) {
        this.listeners.add(obj);
        return true;
    }
    return false;
}

public boolean unregister(Object obj) {
    if (this.listeners.contains(obj)) {
        return this.listeners.remove(obj);
    }
    return false;
}

public void post(Event event) {
    System.out.println("g " + this.listeners.size());
    for (Object listener : this.listeners) {
        System.out.println("f " + listener.getClass().getSimpleName());
        for (Method m : listener.getClass().getMethods()) {
            System.out.println("e " + m.getName());
            if (m.isAnnotationPresent(EventHandler.class)) {
                System.out.println("d");
                if (m.getParameterTypes().length == 1) {
                    System.out.println("c");
                    if (event.getClass().isAssignableFrom(m.getParameterTypes()[0])) {
                        System.out.println("b");
                        try {
                            System.out.println("a");
                            m.invoke(listener, event);
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                } else {
                    CrueModLoader.err("Method annotated with @EventHandler must have only one parameter <? extends Event>");
                }
            }
        }
    }
}
Java:
public claz() {
    System.out.println("ok reg: " + CrueModLoader.EVENT_BUS.register(this));
}
Извините за гарево, но у меня уже конкретно жопу вырывает из-за таких приколов
 
7,099
324
1,510
До какого println доходит выполнение?
Покажи полностью класс claz, мож, эвент-хандлер там статичный? При вызове статичных методов через invoke нужно передавть null первым аргументом
 

jopi

Попрошайка
1,421
30
260
прикол в том что он не проходит проверку на аннотацию, метод не статичен ниодин, и invoke не работает никак
 

jopi

Попрошайка
1,421
30
260
В общем обрисовываю ситуацию, моды я гружу очень калично
Я чекаю папки, если нахожу жарник чекаю его, потом продолжаю
если нахожу класс, гружу его через define class, если он с аннотацией мода(@mod), благо тут проверка работает и он добавляется в лист кандидатов, потом чекаю кандидатов, делаю его объект через newInstance, объект докидываю в лист mods, и потом уже если вызываю евент то отправляю его по всем листенерам, но проверку не проходит через аннотацию
 
Сверху