最近将一个SSHJ项目,导入到Maven工程,以便以后更快捷的开发和移植,但却出现一个百思不得其解的异常:
这个错误很奇怪,因为Maven工程,使用Jetty Plugin或者Netbean自带Tomcat和GlassFish都无法运行,且jetty出现如下警告:
2011-05-03 00:44:44.203:WARN::Skipping PostConstruct annotation on org.springframework.ejb.interceptor.SpringBeanAutowiringInterceptor.autowireBean: has parameters
2011-05-03 00:44:44.203:WARN::Skipping PreDestroy annotation on org.springframework.ejb.interceptor.SpringBeanAutowiringInterceptor.releaseBean: has parameters
2011-05-03 00:44:45.015:WARN::Skipping PostConstruct annotation on org.springframework.ejb.interceptor.SpringBeanAutowiringInterceptor.autowireBean: has parameters
2011-05-03 00:44:45.015:WARN::Skipping PreDestroy annotation on org.springframework.ejb.interceptor.SpringBeanAutowiringInterceptor.releaseBean: has parameters
但是Maven打包的 工程名.war单独放入独立的Timcat下,执行却无任何异常,程序执行良好!让我一头雾水,甚至一度怀疑是Maven无法读取相对路径的persistence.xml或者无法读取Spring的xml配置文件,伤透脑筋,于是,采用junit4单独测试,但结果却否认了以上的猜想。但是为什么3种不同的的服务器都无法运行呢?为什么要跳过Spring的注解配置呢?
<aop:aspectj-autoproxy/>
<context:component-scan base-package="cn.vicky"/>
Spring自动扫描机制在Maven项目中究竟出了什么错???
终于在网上找到一篇与我出现相同问题的文章:
问题终于解决了!
metadata-complete="true" 编译元数据。
在将SSHJ项目转换为Maven工程后,遇到一个异常,导致Jetty和NetBeans的Tomcat、GlassFish无法正常运行。异常涉及Spring的注解处理和资源编码问题。通过在web.xml中设置'metadata-complete="true"'解决了Jetty处理注解时的噪声问题,从而成功启动应用。
1217

被折叠的 条评论
为什么被折叠?



