2016-08-04 74 views
1

我在win10上使用maven + mybatis。在mybatis中找不到資源

文件結構如下:

├─src 
│ ├─main 
│ │ ├─java 
│ │ │ └─com 
│ │ │  └─company 
│ │ │   └─app 
│ │ │    └─mybatisInsert.java 
│ │ │    ─SqlMapConfig.xml 
│ │ │    ─Student.java 
│ │ │    ─Student.xml 
│ │ └─resources 
│ └─test 
│  └─java 
└─target 

所以你可以看到,SqlMapConfig.xml是在同一個目錄中mybatisInsertmybatisInsert是包含主類的文件。是該文件的內容如下:

package main.java.com.company.app; 

import java.io.IOException; 
import java.io.Reader; 

import org.apache.ibatis.io.Resources; 

public class mybatisInsert { 

    public static void main(String args[]) throws IOException{ 

     Reader reader = Resources.getResourceAsReader("SqlMapConfig.xml"); 
    } 

} 

它不工作,我得到了一個錯誤:

Exception in thread "main" java.io.IOException: Could not find resource SqlMapConfig.xml 
     at org.apache.ibatis.io.Resources.getResourceAsStream(Resources.java:114) 
     at org.apache.ibatis.io.Resources.getResourceAsStream(Resources.java:100) 
     at org.apache.ibatis.io.Resources.getResourceAsReader(Resources.java:160) 
     at main.java.com.cisco.ng.mybatisInsert.main(mybatisInsert.java:15) 

我試圖路徑chanage到下面,他們沒有工作。

我該如何讓它工作?

+3

嘗試將XML文件放入資源並在其中添加斜槓Resources.getResourceAsReader(「/ SqlMapConfig.xml」); – Jens

+1

只有java文件屬於src/main/java。其他的東西應該放在src/main/resources中。 – f1sh

回答

1

非常感謝@Jens,最後我通過將SqlMapConfig.xml放在resource目錄中解決了這個問題。