turbowood
Пользователь
- Сообщения
- 119
- Решения
- 3
Всем привет, решил полностью отказаться от джавы и начать писать плагины на Kotlin.
Я создал проект, в котором есть только одна команда, файл Utils:
И сама ошибка (При использовании команды):
Объявил команду вот так:
Я создал проект, в котором есть только одна команда, файл Utils:
Java:
companion object {
fun color(str: String) : String {
return ChatColor.translateAlternateColorCodes('&', str)
}companion object {
fun color(str: String) : String {
return ChatColor.translateAlternateColorCodes('&', str)
}
fun sendLocalMessage(player: Player, radius: Int, message: String) {
for (player1: Player in player.location.world?.players!!) {
player1.sendMessage(color(message))
}
}
}
fun sendLocalMessage(player: Player, radius: Int, message: String) {
for (player1: Player in player.location.world?.players!!) {
player1.sendMessage(color(message))
}
}
}
Java:
override fun onCommand(sender: CommandSender, command: Command, label: String, args: Array<out String>): Boolean {
if (sender !is Player) {
return true
} else if (!sender.hasPermission("roleplay.me")) {
return true
}
val message = args.joinToString(" ") // TODO String Builder
val finalMessage: String = String.format(format, sender.name, message)
sendLocalMessage(sender, 10, finalMessage)
return true
}
И сама ошибка (При использовании команды):
Java:
Caused by: java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics
at com.turbowood.plugins.rolePlay.Commands.MeCMD.onCommand(MeCMD.kt) ~[?:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot-api-1.18.2-R0.1-SNAPSHOT.jar:?]
Объявил команду вот так:
Java:
override fun onEnable() {
getCommand("me")?.setExecutor(MeCMD)
}