org.springframework.beans.factory.BeanCreationException跳坑

167 阅读1分钟

学习Spring框架中的AOP的时候遇到的这个问题:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.context.event.internalEventListenerProcessor': Initialization of bean failed; nested exception is java.lang.IllegalArgumentException: Pointcut is not well-formed: expecting 'name pattern' at character position 32
execution(*com.hwt.service.*.* (..))

网上找了半天,终于解决了,问题所在少个空格

解决方案:在第一个*与包名之间加一个空格

错误代码:

    <aop:config proxy-target-class="true">
        <aop:pointcut id="myPointcut" expression="execution(*com.hwt.service.*.* (..))"/>
        <aop:advisor advice-ref="myAspect" pointcut-ref="myPointcut"/>
    </aop:config>

问题所在:

正确代码:

    <aop:config proxy-target-class="true">
        <aop:pointcut id="myPointcut" expression="execution(* com.hwt.service.*.* (..))"/>
        <aop:advisor advice-ref="myAspect" pointcut-ref="myPointcut"/>
    </aop:config>

bug很小,但不好找,做下记录,希望能帮到大家~~~