解决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:java.nio.charset.MalformedInputException: Input length = 1异常

        设置完毕后,重新package工程还是报同样的错误信息,细细观察后发现,因为项目使用了nacos管理、读取配置文件,而在配置文件中“# mybatis-plus****”后面是中文注释,但是现在乱码了,所以会不会是package过程中解析远程nacos中的配置文件时出现了问题,那么如果项目没有使用nacos,上述File Encodings方法修改后是不是会启动成功(未尝试)。

解决package:java.nio.charset.MalformedInputException: Input length = 1异常

        结合网上说大概率是yml中中文备注的原因,所以先将nacos配置文件的中文注释全都删除 (后面有更简便方法,切勿着急删除配置中文注释!!!)。

解决package:java.nio.charset.MalformedInputException: Input length = 1异常

        再次package项目工程时成功了。

解决package:java.nio.charset.MalformedInputException: Input length = 1异常

三、最终解决

        配置文件增加注释就是方便咱们理解配置作用,现在给全删了肯定不便以后阅读,所以咱们也可以在父类pom.xml文件中增加配置-Dfile.encoding=UTF-8,启动项目后也能够正常打包!

  
    
      
        org.apache.maven.plugins
        maven-surefire-plugin
        
          true
					
          -Dfile.encoding=UTF-8
        
      
    
  

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/e361cdcc85.html