報 java.lang.ExceptionInInitializerError 的常見解決方法
0. 如果你是遇到這個問題?
java.lang.ExceptionInInitializerError
Caused by: org.apache.ibatis.exceptions.PersistenceException:
### Error building SqlSession.
### The error may exist in com/xu/dao/UserMapper.xml
### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource com/xu/dao/UserMapper.xml
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:80)
at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:64)
at com.xu.utils.MybatisUtils.<clinit>(MybatisUtils.java:27)
... 23 more
1. mybatis的配置文件是否有錯
不管是放在src/main/java還是src/main/resources下的目錄,都是只需要寫Java之后的的路徑,如:
2. 檢查是否放行靜態資源
需要在pom問價加入以下代碼:
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>
3.點擊maven的Lifecycle中clean然后檢查是否出現pom中配置問題
如果點檢clean出現以下問題,
請檢查pom文件,特別是以下幾個標簽是否有錯:
<groupId>組ID</groupId>
<artifactId>項目名</artifactId>
<packaging>pom</packaging>