Open ijiangtao opened 6 years ago
在将篇文章从markdow生成为静态博客的时候,控制台反复提示下面的错误:
ERROR Process failed: _posts/java/jse/java8/Java8-MethodReference.md
YAMLException: can not read a block mapping entry; a multiline key may not be an implicit key at line 8, column 5:
tags: [jse,java,java8,MethodReference]
网上很多说法是,YUML语法要求key:后面需要加一个空格,然后再接上vlue,结果试了还是不行。
后来通过notepad++看了一下编码,确实是**TTF-8无BOM格式,文件编码正常。
后来把
tags: [jse,java,java8,MethodReference] 这一段配置删除以后,重新手输入才成功的。
总结下来,应该是字符的编码不符合标准造成编译器读取失败造成的。
为什么文件编码正确,字符编码却不对呢?
我想是因为我在其他富文本编辑器编辑过里面的部分内容,然后复制到md的,而被复制回来的字符已经被富文本编辑器“污染”了。
其实以前也遇到过类似的问题,比如读取被MS Excel编辑过的CSV,读到的内容无法正常编译,再比如从邮件里直接复制出来的SQL执行时,提示语法错误,虽然它们文件本身的字符是正确的,但是包含有不符合格式的字符,也是不行的。
希望上面的采坑记录对你有所帮助。
https://ijiangtao.github.io/2018/01/18/java/jse/java8/Java8-MethodReference/