Maven构建报错:Malformed \uxxxx encoding 解决办法

报错背景:由于项目上不同版本不同分支来回切换,maven一直在刷新,之前切换版本就刷新maven或者终极解决方法就是清除idea缓存重启,这样的方法终于在今天都不生效了,在最后一次切换版本后,本地包一直是标红,去clean 就报Malformed \uxxxx encoding.都不生效,网上搜索领了各种方法,什么说项目多了/ 要找到删除resolver-status.properties文件或者啥的,主要是我都不知道这些在哪里,而且我是用的idea自带maven,所以一直搜解决方法,终于被我找到了

原因分析
出现这个报错的原因是,Maven构建时出现了并发构建的情况,导致多个构建进程同时写resolver-status.properties文件,造成了文件乱码。这种并发构建很可能是操作不当引起的,比如多个工程使用一个本地库,而多个工程同时构建等。

解决办法
既然是文件乱码引起的,删除所有乱码的文件,重新构建当然就能解决了。

在windows环境下,删除Maven本地仓库的所有resolver-status.properties文件,具体的操作方法如下:

打开 PowerShell 窗口
使用 cd 命令切换到Maven本地仓库,如:
cd D:\mavenRepository
1
使用 foreach 循环语句和 rm 命令来删除指定名称的文件:
Get-ChildItem -Include resolver-status.properties -Recurse | Remove-Item
1
其中Get-ChildItem 用于获取当前文件夹下的所有文件,-Include 用于指定要包含的文件类型(这里是所有resolver-status.properties文件),-Recurse 用于递归遍历文件夹,并且 Remove-Item 用于删除找到的文件。

 

你可能感兴趣的:(maven,spring,java)