spring错误:EL1005E:(pos 0): Type cannot be found 'System.out'
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">
<bean id="knight" class="com.test.knights.BraveKnight">
<constructor-arg ref="quest"/>
<!--<constructor-arg ref="minstrel"/>-->
</bean>
<bean id="quest" class="com.test.knights.SlayDragonQuest">
<constructor-arg value="#{T(System).out}"/>
</bean>
<bean id="minstrel" class="com.test.knights.LastMinstrel">
<!--获取控制台输出并注入-->
<constructor-arg value="#{T(System).out}"/>
</bean>
<!--定义切面-->
<aop:config>
<aop:aspect ref="minstrel">
<!--定义切点-->
<aop:pointcut id="embark" expression="execution(* com.test.knights.BraveKnight.embarkOnQuest(..))"/>
<!--定义切点前置事件-->
<aop:before pointcut-ref="embark" method="singBeforeQuest"/>
<aop:after pointcut-ref="embark" method="singAfterQuest"/>
<!--定义切点后置事件-->
</aop:aspect>
</aop:config>
</beans>
解决方法:#号后配置<constructor-arg value="#{T(System).out}"/>
bean依赖以及 切面的的一般xml配置
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">
<bean id="knight" class="com.test.knights.BraveKnight">
<constructor-arg ref="quest"/>
<!--<constructor-arg ref="minstrel"/>-->
</bean>
<bean id="quest" class="com.test.knights.SlayDragonQuest">
<constructor-arg value="#{T(System).out}"/>
</bean>
<bean id="minstrel" class="com.test.knights.LastMinstrel">
<!--获取控制台输出并注入-->
<constructor-arg value="#{T(System).out}"/>
</bean>
<!--定义切面-->
<aop:config>
<aop:aspect ref="minstrel">
<!--定义切点-->
<aop:pointcut id="embark" expression="execution(* com.test.knights.BraveKnight.embarkOnQuest(..))"/>
<!--定义切点前置事件-->
<aop:before pointcut-ref="embark" method="singBeforeQuest"/>
<aop:after pointcut-ref="embark" method="singAfterQuest"/>
<!--定义切点后置事件-->
</aop:aspect>
</aop:config>
</beans>