IDEA上的mybatis綁定錯誤

最近把項目遷移到IDEA上使用,發現Eclpise上的編譯調試徹底沒問題,可是放到IDEA上就各類錯誤。因此懷疑是IDEA編譯的方式有問題。java

最新是跑起來的時候發現,linux

發現雖然配置了shiro,可是不管怎麼輸入都是到shiro本身的異常裏面去了。app

因此Debug了一下,發現錯誤在這裏maven

也就是最多見的綁定異常,檢查了很久也沒發現問題。工具

最後發現編譯好的class下ui

根本就沒有mapper的xml文件。。。。調試

查閱發現http://www.linuxidc.com/Linux/2015-06/118877.htm code

IDEA的maven項目中,默認源代碼目錄下的xml等資源文件並不會在編譯的時候一塊打包進classes文件夾,而是直接捨棄掉。xml


若是使用的是Eclipse,Eclipse的src目錄下的xml等資源文件在編譯的時候會自動打包進輸出到classes文件夾。Hibernate和Spring有時會將配置文件放置在src目錄下,編譯後要一塊打包進classes文件夾,因此存在着須要將xml等資源文件放置在源代碼目錄下的需求。htm


解決IDEA的這個問題有兩種方式。


第一種是創建src/main/resources文件夾,將xml等資源文件放置到這個目錄中。maven工具默認在編譯的時候,會將resources文件夾中的資源文件一塊打包進classes目錄中。


第二種解決方式是配置maven的pom文件配置,在pom文件中找到<build>節點,添加下列代碼:


    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>

其中<directory>src/main/java</directory>代表資源文件的路徑,<include>**/*.xml</include>代表須要編譯打包的文件類型是xml文件,若是有其它資源文件也須要打包,能夠修改或添加通配符。

問題解決

相關文章
相關標籤/搜索