YAMLException : java.nio.charset.MalformedInputException : Input length = 1

场景还原

有小伙伴反应SpringBoot项目启动异常,但是同组其他伙伴的无问题!

ERROR org.springframework.boot.SpringApplication  -
Application run failedorg.yaml.snakeyaml.error.YAMLException: 
java.nio.charset.MalformedInputException : Input length = 1

根据异常信息提示,一般是YAML配置文件格式或编码集有问题。

  • yml配置文件不是UTF-8的格式
  • 配置中含有中文注释导致的

异常原因

java.nio.charset定义用来在字节和 Unicode 字符之间转换的 charset、解码器和编码器。

java.nio.charset.MalformedInputException异常表示输入的字符流或字节流无效,即无法解析。

YAML文件是一种文本文件,它使用Unicode字符集编码存储数据。常见的编码格式有UTF-8、UTF-16等。

在SnakeYAML库中,当解析YAML文件时,如果文件的编码格式与解析器的期望不符,就会抛出这个异常。

解决方案

项目的编码格式一般统一为UTF-8

编码集修改

  • 将IDEA的编码设置全部设置为UTF-8

在这里插入图片描述

  • 如果1没办法解决还是报同样的错,那么在pom中加入如下配置
<properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><maven.compiler.encoding>UTF-8</maven.compiler.encoding><java.version>1.8</java.version>
</properties>

重新配置yml文件

有两个解决思路:

  1. 将yml配置文件中的中文注释全部删除
    但是本来是需要注释才能对各类配置做特定解释,所以不建议

  2. 新建一个配置文件为UTF-8的文件,将原有配置使用txt文件夹打开,再重新复制到新的yml配置文件中

  3. 如果团队的就复制其他小伙伴的,或者是以前正常运行项目的文件


以上两种方式全部尝试过依然失败告终。

JDK版本修改

仔细检查发现他们小组间未统一JDK版本,有成员尝试新特性jdk11 17 21忘记改回

重新配置JDK版本后,程序正常运行并访问成功!

在这里插入图片描述

正常启动效果

// 大威天龙,大罗法咒,般若诸佛,般若巴嘛轰。哼!雕虫小技,竟敢班门弄斧,大威天龙!//
//                          _ooOoo_                               //
//                         o8888888o                              //
//                         88" . "88                              //
//                         (| ^_^ |)                              //
//                         O\  =  /O                              //
//                      ____/`---'\____                           //
//                    .'  \\|     |//  `.                         //
//                   /  \\|||  :  |||//  \                        //
//                  /  _||||| -:- |||||-  \                       //
//                  |   | \\\  -  /// |   |                       //
//                  | \_|  ''\---/''  |   |                       //
//                  \  .-\__  `-`  ___/-. /                       //
//                ___`. .'  /--.--\  `. . ___                     //
//              ."" '<  `.___\_<|>_/___.'  >'"".                  //
//            | | :  `- \`.;`\ _ /`;.`/ - ` : | |                 //
//            \  \ `-.   \_ __\ /__ _/   .-` /  /                 //
//      ========`-.____`-.___\_____/___.-`____.-'========         //
//                           `=---='                              //
//      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^        //
//              佛祖保佑       永不宕机     永无BUG                    //

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/98535.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AMEYA360分析:纳芯微推出超低功耗TMR开关/锁存器 NSM105x系列

纳芯微推出基于隧道磁阻 (TMR) 的超低功耗磁开关/锁存器NSM105x系列&#xff0c;为数字位置检测提供高精度的解决方案&#xff0c;可被广泛应用于工业与消费领域的位置检测。 NSM105x产品系列包含了3个产品型号&#xff0c;即NSM1051(单极开关)、NSM1052(全极开关)、NSM1053(锁…

Linux-ubuntu系统查看显卡型号、显卡信息详解

lspci | grep -i vga #----output------ 01:00.0 VGA compatible controller: NVIDIA Corporation Device 2504 (rev a1) PCI devices

基于生物地理学优化的BP神经网络(分类应用) - 附代码

基于生物地理学优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码 文章目录 基于生物地理学优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码1.鸢尾花iris数据介绍2.数据集整理3.生物地理学优化BP神经网络3.1 BP神经网络参数设置3.2 生物地理学算法应用 4…

在Linux怎么用vim实现把一个文件里面的文本复制到另一个文件里面

2023年10月9日&#xff0c;周一下午 我昨天遇到了这个问题&#xff0c;但在网上没找到图文并茂的博客&#xff0c;于是我自己摸索出解决办法后&#xff0c;决定写一篇图文并茂的博客。 情景 假设现在我要用vim把file_transfer.cpp的内容复制到file_transfer.hpp里面 第一步 …

前端和后端是Web开发中的两个不同的领域,你更倾向于哪一种?

前端和后端是Web开发中的两个不同的领域&#xff0c;你更倾向于哪一种&#xff1f; 你可以从以下几个维度谈谈你对前端开发和后端开发的看法。此为内容创作模板&#xff0c;在发布之前请将不必要的内容删除 一、引言 提示&#xff1a;可对前端开发和后端开发进行简要介绍并提出…

javaee SpringMVC文件上传 项目结构

引入依赖 <?xml version"1.0" encoding"UTF-8"?><project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0…

外贸SOHO新手指南来了!六大注意事项!

电子商务是一种相对低成本的创业方式&#xff0c;其技术门槛和资金门槛较低&#xff0c;即使是个人也能够轻松入行。与国内电子商务相比&#xff0c;跨境电子商务的竞争相对较弱&#xff0c;创业者有更大的发展空间&#xff0c;因此它成为了许多人的首选。那么&#xff0c;对于…

手机切换ip地址的几种方法详解

在某些情况下&#xff0c;我们可能需要切换手机的IP地址来实现一些特定的需求&#xff0c;如解决某些应用程序的限制、绕过IP封禁等。本文将为大家分享几种切换手机IP地址的方法&#xff0c;让您能够轻松应对各种需求。 一、使用动态服务器 使用动态服务器是一种常见的切换手机…

GitHub基础

1、仓库是什么意思&#xff1f;仓库拥有者是谁&#xff1f; 在软件开发或版本控制系统中&#xff0c;"仓库"&#xff08;Repository&#xff09;是指存储项目代码、配置文件、文档等相关文件的地方。它可以看作是一个中央存储库&#xff0c;用于管理和跟踪项目的各个…

微服务技术栈-Nacos配置管理和Feign远程调用

文章目录 前言一、统一配置管理1.添加配置文件2.微服务拉取配置3.配置共享 三、Feign远程调用总结 前言 在上篇文章中介绍了微服务技术栈中Nacos这个组件的概念&#xff0c;Nacos除了可以做注册中心&#xff0c;同样可以做配置管理来使用。同时我们将学习一种新的远程调用方式…

RocketMq(五)消息机制

一、消息过滤&#xff1a;消息者在进行消息订阅时&#xff0c;除了可以指定要订阅消息的Topic外&#xff0c;还可以对指定Topic中的消息根据指定条件进行过滤&#xff0c;即可以订阅比Topic更加细粒度的消息类型。对于指定Topic消息的过滤有两种过滤方式&#xff1a;Tag过滤与S…

迅为龙芯开发板开发板系统烧写-启动系统

上面所有的步骤我们都做完以后&#xff0c;输入命令 sync 确保我们之前的步骤都可以保存到 ssd&#xff0c;接着拔下 U盘&#xff0c;最后输入命令 reboot 重启开发板&#xff0c;如下图所示&#xff1a; 如果启动成功&#xff0c;我们会看到 pmon 从硬盘加载 linux 内核和文件…

PL/SQL全量同步

全量同步 -- 实现逻辑:用源表的数据直接覆盖目标表 -- 插入数据前:先清空目标表,然后查询源表的数据,插入目标表 -- 1. 先创建一个目标表 CREATE TABLE EMP_T AS SELECT E.*, SYSDATE CREATE_DATE, SYSDATE UPDATE_DATE, SYSDATE ETL_DATE FROM EMP E WHERE 12;SELECT * FR…

烟雾文字动画效果

效果展示 CSS 知识点 transform 属性运用transform-origin 属性运用烟雾文字实现 整体页面结构布局实现 <section><p class"text">Lorem ipsum dolor sit amet consectetur adipisicing elit. Vero dolorevoluptas incidunt exercitationem. Consecte…

路径总和 III

题目链接 路径总和 III 题目描述 注意点 二叉树的节点个数的范围是 [0,1000]求该二叉树里节点值之和等于 targetSum 的 路径 的数目 解答思路 可根据前缀和的思路解决本题&#xff0c;前缀和表示从根节点开始&#xff0c;往左或往右组成的路径和&#xff0c;统计从根节点开…

大数据学习(1)-Hadoop

&&大数据学习&& &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 承认自己的无知&#xff0c;乃是开启智慧的大门 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4dd;支持一下博>主哦&#x…

用c动态数组(实现权重矩阵可视化)实现手撸神经网络230902

变量即内存、指针使用的架构原理: 1、用结构struct记录 网络架构,如 float*** ws 为权重矩阵的指针(指针地址); 2、用 = (float*)malloc (Num * sizeof(float)) 给 具体变量分配内存; 3、用 = (float**)malloc( Num* sizeof(float*) ) 给 指向 具体变量(一维数组)的…