Я пытаюсь создать пользовательское исключение в kotlin, а также реализовать интерфейс GraphQLError, для которого требуется метод getMessage ().
Если я пытаюсь реализовать метод, моя IDE предупреждает меня, что:
Accidental override: The following declarations have the same JVM signature (getMessage()Ljava/lang/String;):
public open fun <get-message>(): String? defined in eu.mojo.presentation2018.error.ShopException
public open fun getMessage(): String defined in eu.mojo.presentation2018.error.ShopException
Но если я уберу это:
Class 'ShopException' is not abstract and does not implement abstract member
public abstract fun getMessage(): String! defined in graphql.GraphQLError
Я искал решение по сети, но все требовали некоторого контроля над полем «сообщение», которое вызывает конфликт.В моем случае этот элемент управления не существует, так как поле сообщения определено в классе исключения, который я пытаюсь расширить.
Вот мое определение класса:
class ShopException(code:ErrorCode) : Exception(), GraphQLError {...}