Аспект не работает с аннотацией для некоторых методов - PullRequest
1 голос
/ 22 мая 2019

У меня проблема с использованием Aspect с аннотацией. Метод аспекта запускается в некоторых методах, но не в некоторых других методах. Я проверил, что методы общедоступны, и класс, который он не работает, это @Component.

@Aspect
@Component
public class PrometheusCounterMetricAspect {

  private static final Map<String, Counter> counters = new HashMap<>();

  @Before(
      "execution(* *(..)) && @annotation(package.aspects.PrometheusCounterMetric)")
  void beforeInsert(JoinPoint joinPoint) {
    .....}

Это интерфейс аннотации

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface PrometheusCounterMetric {
  String metricName();
}

А в проекте поток есть контроллер -> сервис -> хранилище. Он работает в сервисе, но не в хранилище, несмотря на то, что он является компонентом.

...