1. ホーム

原因:java.nio.charset.MalformedInputException。入力の長さ = 1

2022-02-22 19:15:37

原因: org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: 入力の長さ = 1
    at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:254)
    at org.yaml.snakeyaml.reader.StreamReader.<init>(StreamReader.java:58)
    at org.yaml.snakeyaml.Yaml.loadAll(Yaml.java:537)
    at org.springframework.beans.factory.config.YamlProcessor.process(YamlProcessor.java:160)
    at org.springframework.beans.factory.config.YamlProcessor.process(YamlProcessor.java:138)
    org.springframework.boot.env.OriginTrackedYamlLoader.load(OriginTrackedYamlLoader.java:72)にて。
    at org.springframework.boot.env.YamlPropertySourceLoader.load(YamlPropertySourceLoader.java:50)
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.loadDocuments(ConfigFileApplicationListener.java: 545)
    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:515)
    ... 25共通フレーム省略
原因:java.nio.charset.MalformedInputException: 入力の長さ = 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)
    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:223)
    ... 33共通フレーム省略

他のブログを見た結果、ほとんどの理由が似通っていたので、私の意見を述べます。

     理由は、ymlファイルを書くときに、おそらくGBKでエンコードされていると思うのですが、そのファイルを読むときに、注釈がついていると(試してみましたが、中国語の数がおかしいようです)、読んだバイトが半バイトと勘違いして、1を要求するので、このエラーを報告するのでしょう。

解決方法

コーディングを変更するか、アノテーションを削除してください。