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

简介: IDEA中使用maven的打包命令install来对项目打包,出现了这个错误。org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1

问题描述:



IDEA中使用maven的打包命令install来对项目打包,出现了这个错误。

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


问题分析:



上网搜了很多信息,都是说是yml编码不一致问题,因为笔者使用的是nacos,nacos中的yml文件默认编码是UTF-8,所以笔者就检查了项目里的文件发现都是UTF-8,也没有问题,显然这个解决方案不适用。然后发现该问题的导致是因为Test命令所引起的。这里需要说下install命令的执行是包含Test命令的,所以可以认为这个问题是Test命令导致的。


问题解决:



20210428163450277.png


skip项目中的Test命令,跳过Test阶段,直接进行编译和打包,然后发现成功了。所以可以确定这个问题的导致是test包下面的文件造成,但是笔者又去检查了这些测试文件的编码也都是UTF-8还是没有问题。最后还是不清楚导致该问题的根本原因,只是在表象上解决了他,通过跳过Test命令来实现了正常的编译打包。需要说下的是:跳过Test对编译和打包不会有任何影响,Test命令仅仅是执行test包下面的文件,对实际运行项目时不构成任何影响。


相关文章
|
1月前
|
Kubernetes Cloud Native 流计算
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
74 0
|
3月前
|
Java 数据处理
Java IO 接口(Input)究竟隐藏着怎样的神秘用法?快来一探究竟,解锁高效编程新境界!
【8月更文挑战第22天】Java的输入输出(IO)操作至关重要,它支持从多种来源读取数据,如文件、网络等。常用输入流包括`FileInputStream`,适用于按字节读取文件;结合`BufferedInputStream`可提升读取效率。此外,通过`Socket`和相关输入流,还能实现网络数据读取。合理选用这些流能有效支持程序的数据处理需求。
46 2
|
3月前
|
Java
Java系列之 For input string: ““
这篇文章讨论了Java中因尝试将空字符串转换为其它数据类型(如int)时出现的`For input string: ""`错误,并提供了通过非空检查来避免此错误的解决方法。
|
3月前
|
XML Java 数据库连接
Mybatis java.lang.NumberFormatException: For input string: "1,2" 问题处理
【8月更文挑战第9天】Mybatis java.lang.NumberFormatException: For input string: "1,2" 问题处理
|
3月前
|
Java Linux Nacos
Java -jar 运行 报 MalformedInputException: Input length = 1
Java -jar 运行 报 MalformedInputException: Input length = 1
43 0
|
5月前
|
Scala
scala 读取文件(中文)异常 thread "main" java.nio.charset.MalformedInputException: Input length = 1
scala 读取文件(中文)异常 thread "main" java.nio.charset.MalformedInputException: Input length = 1
51 0
|
6月前
|
存储 Java
java IO接口(Input)用法
【5月更文挑战第1天】Java的`java.io`包包含多种输入输出类。此示例展示了如何使用`FileInputStream`从`input.txt`读取数据。首先创建`FileInputStream`对象,接着创建一个字节数组存储读取的数据,调用`read()`方法将文件内容填充至数组。然后将字节数组转换为字符串并打印,最后关闭输入流。注意,`InputStream`是抽象类,此处使用其子类`FileInputStream`。其他子类如`ByteArrayInputStream`、`ObjectInputStream`和`BufferedInputStream`各有特定用途。
65 2
|
6月前
Swagger2异常:java.lang.NumberFormatException: For input string: ““
Swagger2异常:java.lang.NumberFormatException: For input string: ““
59 1
|
Java
java中length,length(),size()区别
1 java中的length属性是针对数组说的,比如说你声明了一个数组,想知道这个数组的长度则用到了length这个属性.2 java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这个方法.
1402 0
|
11天前
|
安全 Java 测试技术
Java并行流陷阱:为什么指定线程池可能是个坏主意
本文探讨了Java并行流的使用陷阱,尤其是指定线程池的问题。文章分析了并行流的设计思想,指出了指定线程池的弊端,并提供了使用CompletableFuture等替代方案。同时,介绍了Parallel Collector库在处理阻塞任务时的优势和特点。