使用maven搭建ssm框架遇到的spring找不到配置文件问题

转发的原文

在打包部署时,为了防止mybatis的mapper文件被过滤掉,在pom文件的build节点下加入了如下代码:
    <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>

然后发布后就悲剧了,提示applicationContext-*文件找不到,报了FileNotFindExeception

Could not resolve bean definition resource pattern [classpath:spring/applicationContext-*…

原因:
maven默认扫描src/main/resources中的xml文件而不理会src/main/java中的xml文件,所以我们添加了resource节点,这样就会改变maven默认的扫描策略,造成src/main/resources下的配置文件打包丢失

解决方法:
再添加一个resource节点


<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>