2016-08-04 5 views
1

Ich benutze maven + mybatis auf win10.konnte nicht finden resouce in mybatis

Dateistruktur ist wie folgt:

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

So können Sie sehen, SqlMapConfig.xml im selben Verzeichnis wie mybatisInsert ist. mybatisInsert ist die Datei, die die Hauptklasse enthält. Der Inhalt der Datei sind wie folgt:

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"); 
    } 

} 

es nicht funktioniert, ich habe einen Fehler:

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) 

Ich habe versucht, den Pfad zu dem folgenden Chanage, keiner von ihnen arbeitete.

Wie kann ich es funktionieren lassen?

+3

versuchen Sie, die XML-Dateien in Ressourcen zu setzen und einen Schrägstrich hinzuzufügen, wo Sie es lesen Resources.getResourceAsReader ("/ SqlMapConfig.xml"); – Jens

+1

Nur Java-Dateien gehören in src/main/java. Alles andere sollte in src/main/resources abgelegt werden. – f1sh

Antwort

1

Ein großes Dankeschön an @Jens, schließlich habe ich das Problem gelöst, indem ich SqlMapConfig.xml in das Verzeichnis resource gestellt habe.