org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1

这篇具有很好参考价值的文章主要介绍了org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题

运行SpringBoot项目,控制台报错

java.lang.IllegalStateException: Failed to load property source from 'file:/D:/JavaProjects/seckilldemo/target/classes/application.yml' (classpath:/application.yml)

详细问题

对于最新下载的IDEA,笔者运行SpringBoot项目,控制台报错

16:55:17.982 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
java.lang.IllegalStateException: Failed to load property source from 'file:/D:/JavaProjects/seckilldemo/target/classes/application.yml' (classpath:/application.yml)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:553)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.loadForFileExtension(ConfigFileApplicationListener.java:498)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:468)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.lambda$null$7(ConfigFileApplicationListener.java:447)
	at java.lang.Iterable.forEach(Iterable.java:75)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.lambda$load$8(ConfigFileApplicationListener.java:447)
	at java.lang.Iterable.forEach(Iterable.java:75)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:444)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.lambda$load$0(ConfigFileApplicationListener.java:347)
	at org.springframework.boot.context.config.FilteredPropertySource.apply(FilteredPropertySource.java:54)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:335)
	at org.springframework.boot.context.config.ConfigFileApplicationListener.addPropertySources(ConfigFileApplicationListener.java:226)
	at org.springframework.boot.context.config.ConfigFileApplicationListener.postProcessEnvironment(ConfigFileApplicationListener.java:210)
	at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEnvironmentPreparedEvent(ConfigFileApplicationListener.java:200)
	at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEvent(ConfigFileApplicationListener.java:188)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)
	at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:80)
	at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53)
	at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:345)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
	at com.haut.edu.seckill.SeckillDemoApplication.main(SeckillDemoApplication.java:12)
Caused by: org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1
	at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:218)
	at org.yaml.snakeyaml.reader.StreamReader.ensureEnoughData(StreamReader.java:176)
	at org.yaml.snakeyaml.reader.StreamReader.ensureEnoughData(StreamReader.java:171)
	at org.yaml.snakeyaml.reader.StreamReader.peek(StreamReader.java:126)
	at org.yaml.snakeyaml.scanner.ScannerImpl.scanToNextToken(ScannerImpl.java:1177)
	at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:287)
	at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:227)
	at org.yaml.snakeyaml.parser.ParserImpl$ParseImplicitDocumentStart.produce(ParserImpl.java:195)
	at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:158)
	at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148)
	at org.yaml.snakeyaml.composer.Composer.checkNode(Composer.java:82)
	at org.yaml.snakeyaml.constructor.BaseConstructor.checkData(BaseConstructor.java:123)
	at org.yaml.snakeyaml.Yaml$1.hasNext(Yaml.java:489)
	at org.springframework.beans.factory.config.YamlProcessor.process(YamlProcessor.java:200)
	at org.springframework.beans.factory.config.YamlProcessor.process(YamlProcessor.java:164)
	at org.springframework.boot.env.OriginTrackedYamlLoader.load(OriginTrackedYamlLoader.java:82)
	at org.springframework.boot.env.YamlPropertySourceLoader.load(YamlPropertySourceLoader.java:50)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.loadDocuments(ConfigFileApplicationListener.java:607)
	at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:523)
	... 25 common frames omitted
Caused by: java.nio.charset.MalformedInputException: Input length = 1
	at java.nio.charset.CoderResult.throwException(CoderResult.java:281)
	at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:339)
	at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
	at java.io.InputStreamReader.read(InputStreamReader.java:184)
	at org.yaml.snakeyaml.reader.UnicodeReader.read(UnicodeReader.java:125)
	at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:183)
	... 43 common frames omitted

Process finished with exit code 1

解决方案

1 、 F i l e File File → \rightarrow S e t t i n g s Settings Settings(或使用快捷键 C t r l + A l t + S Ctrl+Alt+S Ctrl+Alt+S

org.yaml.snakeyaml.error.yamlexception: java.nio.charset.malformedinputexcep,java,nio,开发语言
2 、输入框输入 e n c o d i n g encoding encoding,将 G l o b a l E n c o d i n g , P r o j e c t E n c o d i n g , D e f a u l t e n c o d i n g f o r p r o p e r t i e s f i l e s Global Encoding,Project Encoding,Default encoding for properties files GlobalEncodingProjectEncodingDefaultencodingforpropertiesfiles编码格式修改为UTF-8

org.yaml.snakeyaml.error.yamlexception: java.nio.charset.malformedinputexcep,java,nio,开发语言

错误原因

在Spring Boot项目中,通常使用.yml或.properties文件来存储配置信息。在加载这些文件时,需要确保文件的编码格式与加载代码中指定的编码格式一致,否则就会出现编码错误。
如上,在报错信息中提到了

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

表明在读取配置文件时遇到了无效的字符,导致编码异常。
通常情况下,配置文件的编码应该与项目的编码格式保持一致。如果配置文件使用了其他编码格式(如GBK),而加载代码中指定了UTF-8编码格式,就会导致编码不一致的问题,从而报错。

解决原因

通过将IDEA的编码设置与项目代码一致,确保配置文件使用相同的编码格式(例如UTF-8),就能解决编码不一致的问题。修改IDEA的编码设置为UTF-8后,再次加载配置文件时就能正确读取文件内容,并避免编码异常导致的错误。
因此,通过将IDEA的编码设置修改为UTF-8,可以确保配置文件和项目代码之间的编码一致性,从而解决该问题

参考文献

错误原因及解决原因参考chatgpt

原创不易
转载请标明出处
如果对你有所帮助 别忘啦点赞支持哈
org.yaml.snakeyaml.error.yamlexception: java.nio.charset.malformedinputexcep,java,nio,开发语言文章来源地址https://www.toymoban.com/news/detail-852585.html

到了这里,关于org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Caused by: java.nio.charset.MalformedInputException: Input length = 2

     java.nio.charset.MalformedInputException: Input length = 2 异常表示输入数据的长度不正确,导致字符集解析失败。 MalformedInputException 是 Java NIO(New I/O)中的一个异常类,它通常在字符集编解码时出现问题时抛出。在你的情况下,输入数据的长度为2,可能与所使用的字符集或编码方式不

    2024年02月08日
    浏览(30)
  • 解决package:java.nio.charset.MalformedInputException: Input length = 1异常

    目录 一、问题重现 二、解决思路 三、最终解决         今天本地idea在多模块Maven:package时出现java.nio.charset.MalformedInputException: Input length = 1异常,Maven:clean正常。         起初百度说是File Encodings设置成UTF-8后,启动会正常。         设置完毕后,重新package工程

    2024年02月01日
    浏览(21)
  • SpringBoot项目启动报java.nio.charset.MalformedInputException Input length = 1解决方案

    SpringBoot启动报错java.nio.charset.MalformedInputException: Input length = 1 出现这个的原因,就是解析yml文件时,中文字符集不是 utf-8 的原因,这是maven在项目编译时,默认字符集编码是GBK。 检查pom文件 要将编译字符集改成utf-8。 IDEA编码格式修改 文件修改 如果你的application.yml文件是把

    2024年02月20日
    浏览(27)
  • Missing artifact org.yaml:snakeyaml:jar:1.29

    环境变量配置maven,eclipse中配置maven,重启eclipse。

    2024年02月22日
    浏览(31)
  • Provides transitive vulnerable dependency org.yaml:snakeyaml:1.33

    新创建了一个 springboot3 的项目,弹出警告。 Provides transitive vulnerable dependency org.yaml:snakeyaml:1.33 这段报错的意思是: snakeyaml 是一个脆弱的传递依赖。 SpringBoot2.x 用的是 1.30 版本,SpringBoot3.x 用的是 1.33 版本,尽管已经升级了版本,但是 1.33 版本仍然存在漏洞。 截止到 2022-12

    2024年02月11日
    浏览(30)
  • org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping

    今天启动某开源项目时,碰到一个问题 org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping 。 2.1 修改项目目录下缩进格式 在项目下的nacos目录中 application-common.yml 文件中修改缩进格式,每行一致。 2.2 查看并修改Nacos中application-common.yml发布的内容 什么是 Nacos 欢迎来到

    2024年02月11日
    浏览(37)
  • 警告:Provides transitive vulnerable dependency maven:org.yaml:snakeyaml:1.30

    SpringBoot 的 validation 依赖包含有易受攻击的依赖 snakeyaml。 警告信息如下: Provides transitive vulnerable dependency maven:org.yaml:snakeyaml:1.30 意思是:提供了可传递的易受攻击依赖 maven:org.yaml:snakeyaml:1.30 使用 dependencyManagement ,将所有的 snakeyaml 统一改成没有隐患的版本。

    2024年02月10日
    浏览(28)
  • org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next token

    pom.xm 中定义多环境配置如下: application.yml中使用@引入 无法识别 @ 符号 然后在 idea 中点击maven 重新加载一下项目 如果不行,检查一下项目,在模块的pom.xml文件下引入一下配置

    2024年02月11日
    浏览(26)
  • pom.xml中解决Provides transitive vulnerable dependency maven:org.yaml:snakeyaml:1.33警告

    构建springboot3项目时,pom文件的spring-boot-starter-web依赖部分整体高亮, 显示Provides transitive vulnerable dependency maven:org.yaml:snakeyaml:1.33 这个警告提示我们的Maven项目中使用了一个被认为是有漏洞的依赖项,并且这个依赖项也被其他依赖项所传递。 具体来说,这个警告是指: 在我们

    2023年04月23日
    浏览(82)
  • org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next token found character ‘@‘

    报错信息: Application run failed org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next token found character \\\'@\\\' that cannot start any token. (Do not use @ for indentation) in \\\'reader\\\', line 58, column 13: active: @profiles.active@

    2024年02月12日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包