解決idea中maven項目無法讀取src/main/java目錄下面的配置文件問題


解決idea中maven項目無法讀取src/main/java目錄下面的配置文件問題

            當我們在maven項目中使用Mybatis的時候,需要給Mybatis配置核心xml文件(MyBatis-Config.xml)和映射文件(XxxMapper.xml),一般我們把映射文件和mapper(也就是dao層)放在同一層目錄下。

            但是在idea中創建maven項目的時候,會出現無法讀取到mapper目錄下對應的mapper.xml文件(因為項目在編譯java目錄下的文件時只會去編譯.java文件);以下提供了兩種解決問題的方法:

 

       第一種:先在src/main/resources目錄下創建和src/main/java目錄下相同的目錄結構(保持項目整體結構的清晰),然后將mapper.xml文件移動到resources目錄下相應的目錄中,就可以解決了。(建議使用,因為在真正項目開發中,配置文件和.java文件不會放在一起,都是分開放的,這樣便於管理

  原理:項目在編譯完java和resources兩目錄下的所有文件后,會將兩目錄下的代碼都整合到target目錄中去,其實項目真正執行的是target目錄下的代碼,而java目錄和resources目錄相當於兩個根目錄,當兩個目錄的資源被整合到target中時,兩目錄擁有相同的目錄結構,這樣mapper.xml在target目錄中就會被放到mapper(也就是dao層)目錄下。

  

  第二種:只需要將如下代碼直接復制到pom.xml文件下即可。

<build>
        <resources>
            <!--指定xml文件位置-->
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <!--這里寫成true會造成編譯注釋錯誤-->
                <filtering>false</filtering>
            </resource>
        </resources>
    </build>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM