什么会在运行时导致此问题?:
匹配的通配符是严格的,但是 没有声明可以找到 元素'aop:config'
以下是相关的Spring XML:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">
.
.
.
<aop:config>
<aop:advisor pointcut="execution(* acme.exam.driver.ui.components..*(..))"
advice-ref="loggingInterceptor" />
</aop:config>
<bean id="loggingInterceptor"
class="org.springframework.aop.interceptor.CustomizableTraceInterceptor">
<property name="enterMessage"
value="ENTER: $[targetClassShortName].$[methodName]($[arguments])" />
<property name="exitMessage"
value="EXIT: $[targetClassShortName].$[methodName]($[arguments]) = $[returnValue])" />
</bean>
</beans>
请注意,我已经在类路径上放置了 aspectjweaver.jar 和 aspectjrt.jar 。
答案 0 :(得分:2)
您是否在类路径上双击了弹簧aop神器?
根据我的maven依赖关系,aspectjweaver还不够,我还需要aspectjrt。
答案 1 :(得分:0)
确保<spring-framework-directory>/dist/modules/spring-aop.jar
在您的课程路径中。
答案 2 :(得分:0)
对于其他任何人,我在配置中解决了这个错误,其中命名空间包含项目
xmlns:aop="http://www.springframework.org/schema/aop
虽然没有包含 xsi:schemaLocation 元素
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
此配置错误导致上述消息 添加schemaLocation元素解决了它。