У меня есть абстрактный класс, который реализует некоторый базовый c интерфейс. ( метод атаки не унаследован от базового c интерфейса )
public abstract class AbstractClass implements BasicInterface {
public void attack(String attackerId, float attackerAttackSpeed) {
... // method body
}
}
У меня также есть класс, расширяющий абстрактный класс.
@Service
public class A extends AbstractClass {
// other methods...
}
Прямо сейчас я пытаюсь наблюдать метод атаки (String attackerId, float attackerSpeedAttack)
@Aspect
@Component
public class AspectJ{
@After(value = "execution(* package.A.attack(attackerId, ..)) && args(attackerId)")
public void broadcastAttackMessage(String attackerId) {
... //method body
}
}
Но, к сожалению, Intellij сказал мне, что Этот совет не рекомендует никаких методов . Также во время запуска приложения я получил ошибку с трассировкой стека:
Caused by: java.lang.IllegalArgumentException: error at ::0 name binding only allowed in target, this, and args pcds
Что я делаю не так? Есть ли способ наблюдать метод из суперкласса? Я что-то пропустил?