Maven编译提示“Malformed \uxxxx encoding”

在idea中执行maven编译命令时,报错提示:

java.lang.IllegalArgumentException: Malformed \uxxxx encoding.
    at java.util.Properties.loadConvert (Properties.java:672)
    at java.util.Properties.load0 (Properties.java:455)
    at java.util.Properties.load (Properties.java:408)
    at org.eclipse.aether.internal.impl.TrackingFileManager.read (TrackingFileManager.java:56)
    at org.eclipse.aether.internal.impl.DefaultUpdateCheckManager.read (DefaultUpdateCheckManager.java:511)
    at org.eclipse.aether.internal.impl.DefaultUpdateCheckManager.checkMetadata (DefaultUpdateCheckManager.java:250)
    at org.eclipse.aether.internal.impl.DefaultMetadataResolver.resolve (DefaultMetadataResolver.java:302)
    at org.eclipse.aether.internal.impl.DefaultMetadataResolver.resolveMetadata (DefaultMetadataResolver.java:181)

这种主要是因为mvn本地仓库里有些包拉取的有问题,找出来然后删除即可,原文:java.lang.IllegalArgumentException: Malformed \uxxxx encoding while mvn install

解决方案:

  1. 定位有问题的文件位置
grep -rnw ~/.m2 -e '\u0000'
如果你的本地仓库不是在 ~/.m2,需要自行替换下
  1. 将1中的输出结果文件所在的包删除,然后重新编译即可
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
提高 Maven 编译速度可以采取以下几种方法: 1. 使用并行构建:Maven 3.2.1 版本及以上支持并行构建,可以通过在命令行中添加 `-T` 参数来指定并行线程数。例如,`mvn clean install -T 4` 表示使用 4 个线程进行构建。这样可以利用多核处理器的优势加快编译速度。 2. 配置增量编译Maven 默认会对所有源代码进行重新编译,即使只有部分代码发生了变化。可以通过配置增量编译插件来只编译发生变化的代码。常用的插件有 `maven-compiler-plugin` 和 `maven-jar-plugin`。 3. 使用本地仓库:Maven 默认会从远程仓库下载依赖的 JAR 包,这会消耗一定的时间。可以将常用的依赖手动安装到本地仓库,这样在编译时就不需要从远程仓库下载了。可以使用 `mvn install:install-file` 命令将 JAR 包安装到本地仓库。 4. 配置镜像仓库:可以配置使用国内的镜像仓库,这样可以加快下载依赖的速度。可以在 Maven 的配置文件 `settings.xml` 中配置 `<mirrors>` 标签来指定镜像仓库。 5. 使用缓存:可以使用插件来缓存已编译的类文件,避免重复编译。常用的插件有 `maven-compiler-plugin` 的 `useIncrementalCompilation` 参数和 `maven-clean-plugin` 的 `excludeDefaultDirectories` 参数。 6. 调整内存设置:可以通过调整 Maven 的内存设置来提高编译速度。可以在 Maven 的配置文件 `settings.xml` 中配置 `<build>` 标签下的 `<memory>` 标签来指定内存设置。 7. 使用构建缓存工具:可以使用构建缓存工具,如 Gradle 或 Bazel,来代替 Maven。这些工具具有更高效的构建机制,可以显著提高编译速度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zlp1992

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值