Running with springboot 2.2.5 ,which contains spring version: spring-core-5.2.4 and spring-aop-5.2.4.

Scenario: My Listener as bellow: @Service public class UserJoinRoomListener implements ApplicationListener<UserJoinRoomEvent> { @Override @TraceSource(sampler = RoomEntrySampler.class) //AOP here to trigger #{RoomEntrySampler#process} after current funtion invoked public void onApplicationEvent(UserJoinRoomEvent event) { System.out.println("Hello "); } }

RoomEntrySampler code as bellow: public class RoomEntrySampler{ @Override public void process(UserJoinRoomEvent event) { System.out.println("World"); } }

when i call ApplicationContext.publishEvent(new UserJoinRoomEvent(xxx,xxx))

Expectation: it should print "Hello World".

Actually: it print "Hello Hello World"

Question: to my understanding, Function "onApplicationEvent"(the proxy object ) should only be invoked at just one time and run at one go. but it's not eventually ,, can i consider this situation as a "Bug"?

Comment From: quaff

You should provide a minimal test project.

Comment From: freezingWu

close this issue ,and track it in https://github.com/spring-projects/spring-boot/issues/23066.