Mybatis配置错误:java.lang.ExceptionInInitializerError

作者:三淳 时间:2021-12-31 16:58:59 

情况一:配置文件,无法被导出或者生效
修改前:

Mybatis配置错误:java.lang.ExceptionInInitializerError

修改后:

Mybatis配置错误:java.lang.ExceptionInInitializerError

究其原因,这是由于Maven的约定大于配置,导致我们写的配置文件,无法被导出或者生效的问题,解决方案:
在pom.xml文件中配置导出非resources文件夹下的xml文件和properties,这样在编译运行后target文件夹下就能找到对应的配置文件了。


<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>

情况二:Mybatis-config.xml配置文件或者XXXMapper.xml文件中存在中文注释。
这是因为中文操作系统编码为GBK,MAVEN安装后默认使用系统编码GBK,导致在编译UTF-8格式的源代码文件时出现编码不匹配的问题。

1.当然你可以直接把中文注释删除,只是这不符合编程规范,那么你可以尝试第二种方法。

2.MAVEN编码从GBK改为UTF-8。

1.查看当前Maven默认的编码格式:
cmd中输入mvn -v 可以查看Maven的属性

Mybatis配置错误:java.lang.ExceptionInInitializerError

2.设置环境变量,
变量名: MAVEN_OPTS
变量值: -Xms256m -Xmx512m -Dfile.encoding=UTF-8

3.再次查看Maven属性,默认的编码格式已经发生改变。

Mybatis配置错误:java.lang.ExceptionInInitializerError

4.在pom.xml配置文件的

中设置Maven编码格式:


<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>

Mybatis配置错误:java.lang.ExceptionInInitializerError

情况三:Mybatis-config.xml中没有配置mapper

Mybatis配置错误:java.lang.ExceptionInInitializerError

每一Mapper.XML都需要dMybatis核心配置文件中注册


<mappers>
   <mapper resource="com/th/dao/UserMapper.xml"/>
</mappers>

Mybatis配置错误:java.lang.ExceptionInInitializerError

来源:https://www.cnblogs.com/threepure/archive/2020/12/17/14147876.html

标签:Mybatis,配置,错误
0
投稿

猜你喜欢

  • 使用@RequestBody配合@Valid校验入参参数

    2023-05-04 22:36:09
  • springmvc参数为对象,数组的操作

    2022-04-20 07:38:03
  • Spark网站日志过滤分析实例讲解

    2021-06-08 12:59:24
  • 值得Java开发者关注的7款新工具

    2023-11-02 23:05:31
  • SpringBoot如何通过Feign调用传递Header中参数

    2023-11-24 21:39:29
  • 实例详解SpringBoot默认的JSON解析方案

    2023-07-21 07:34:20
  • Java中Synchronized的用法解析

    2023-07-28 22:40:51
  • java线程池详解及代码介绍

    2023-09-16 07:21:57
  • Spring Cache手动清理Redis缓存

    2023-11-29 02:49:52
  • java文件操作输入输出结构详解

    2023-07-30 21:48:30
  • SpringMVC数据响应详细介绍

    2023-09-24 04:12:41
  • Java多线程的临界资源问题解决方案

    2021-12-29 07:44:35
  • MyBatis-Plus找不到Mapper.xml文件的几种解决方法

    2023-11-24 03:37:52
  • Android带进度条的文件上传示例(使用AsyncTask异步任务)

    2023-06-24 09:43:11
  • JavaCV实战之调用摄像头基础详解

    2022-07-15 02:14:10
  • OpenCV实现反阈值二值化

    2022-06-29 16:02:33
  • c# 获取CookieContainer的所有cookies函数代码

    2023-06-17 23:11:30
  • C#过滤DataTable中空数据和重复数据的示例代码

    2022-03-15 19:33:45
  • Android 实现永久保存数据的方法详解

    2023-06-23 22:13:23
  • Java8 用Lambda表达式给List集合排序的实现

    2023-02-05 17:27:09
  • asp之家 软件编程 m.aspxhome.com