본문 바로가기

프로그래밍

AspectJ 수동 추가 후 일부 Pointcut이 정상적으로 동작하지 않을 때 해결하기

일부 pointcut은 잡히지만 안잡히는 Aspect의 pointcut이 있었다.

잡으려는 Point가 protected void 함수였는데,
단순하게 protected 타입때문 혹은 Abastract Method가 이유라고 생각했다
-> 직접적으로 선언하거나 pointcut 설정 기술인 SuperClass+ 표기로 해도 되지 않았다.

CGLIB가 이를 해결하리라 믿고 추가하였음에도 불구하고 정상동작하지 못했다.

그래서 그냥 뭐든 해보자라는 마음으로 프로젝트 설정을 바꿔 보았다. 


Convert to AspectJ Project

소스 수정화면 좌측명에 Aspect별 위치도 출력이 안되었다가 설정된 두에 출력되었다.


선택 후 Explorer을 다시 로드하고 다시 프로그램을 실행해뵌 바로 Aspect 및 Pointcut 동작했다.

반나절을 삽질하다가 드디어 해결했다...

왜그런지는 또 찾아봐야겠다.