Failed to register events - problem

Pytania i problemy
szymhal
szymhal

Cześć, napotkałem się na problem podczas uruchamiania mojego pluginu. W konsoli pokazuje się błąd: [10:12:11 ERROR]: [BlockCommands] Plugin BlockCommands v1.0 has failed to register events for class pl.SzymoonDev.plugin.Main because org/bukkit/event/server/TabCompleteEvent does not exist.

xSeKaBo
xSeKaBo

Myślę że pomocne byłoby udostępnienie kodu pliku Main i napisanie wersji silnika. Czy zaimportowałeś "org.bukkit.event.server.TabCompleteEvent"? Jeśli tak to spróbuj użyć api spigota ale w wersji shaded (Mi w paru rozwiązaniach pomogło).

Ps. Nie znam się świetnie na języku Java, więc mogę się mylić.

szymhal
szymhal

Gdyby importu nie było, plugin nie uruchomiłby się. (jest zaimportowane) W Build Path mam bukkit-1.11.2 oraz spigot-1.11.2 (spigot do api bungeecorda i niektórych rzeczy od md_5.)

xSeKaBo
xSeKaBo

Mógłbyś udostępnić kod pluginu? Znacznie to by mi pomogło.

szymhal
szymhal

Nadal nie wiem w czym ma Ci kod pomóc, skoro pytam o event, który nie jest zarejestrowany na stronie bukkita, no ale proszę: https://hastebin.com/aqizarukus.js

Toranktto
Toranktto

Może spróbuj zmienić wersję silnika którego używasz na serwerze? Bo z tego błędu wynika że błąd jest właśnie po jego stronie.

Timo
Timo Moderator forum.lvlup.pro

Zła wersja silnika w stosunku do wykorzystanego API w pluginie. Silnik serwera nie widzi poprawnie pl.SzymoonDev.plugin.Main , ponieważ ma inną klasę org/bukkit/event/server/TabCompleteEvent. Zalecam zmianę silnika serwera na taki, jaki został użyty w pluginie.

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

Timo:

Silnik serwera nie widzi poprawnie pl.SzymoonDev.plugin.Main , ponieważ ma inną klasę org/bukkit/event/server/TabCompleteEvent.

Nie umiesz into java :
Oczywiście, że widzi klase Main, tylko nie może załadować pluginu bo nie odnalazł klasy org.bukkit.event.server.TabCompleteEvent

Wydaje mi się, że event ten nazywa się PlayerChatTabCompleteEvent: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/player/PlayerChatTabCompleteEvent.html

nie wiem czego ty tam próbujesz użyć :D

szymhal
szymhal

Nieznajomy11:

PlayerChatTabCompleteEvent

W tym evencie nie da się ustawiać dopełnień. (e.setCompletions)

szymhal
szymhal

Refff

Szymon
Szymon

A co to niby jest: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/player/PlayerChatTabCompleteEvent.html#getTabCompletions-- ??

Wystarczy dodać do listy odpowiednie ciągi znaków.

szymhal
szymhal

Nie rozumiem o co Ci chodzi.

szymhal
szymhal

Ref

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

Eh. W tym evencie co podałem getCompletions() zwraca kolekcje z nimi, trzeba do niej dodać coś i działa, bo z tego co widzę nie jest napisane w javadocsach, że to kopia.

system
system

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.