You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ编译Java项目遇-javaagent处理失败错误求助

解决JDK 19 + Apple Silicon环境下IntelliJ启动Java项目的编码解码错误

错误信息

Exception in thread "main" java.lang.IllegalArgumentException: Error decoding percent encoded characters
    at java.base/sun.net.www.ParseUtil.decode(ParseUtil.java:218)
    at java.base/jdk.internal.loader.URLClassPath$FileLoader.<init>(URLClassPath.java:1218)
    at java.base/jdk.internal.loader.URLClassPath$3.run(URLClassPath.java:491)
    at java.base/jdk.internal.loader.URLClassPath$3.run(URLClassPath.java:485)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
    at java.base/jdk.internal.loader.URLClassPath.getLoader(URLClassPath.java:484)
    at java.base/jdk.internal.loader.URLClassPath.getLoader(URLClassPath.java:452)
    at java.base/jdk.internal.loader.URLClassPath.getResource(URLClassPath.java:321)
    at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:757)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:435)
    at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:503)
*** java.lang.instrument ASSERTION FAILED ***: "result" with message agent load/premain call failed at open/src/java.instrument/share/native/libinstrument/JPLISAgent.c line: 422
FATAL ERROR in native method: processing of -javaagent failed, processJavaStart failed

Process finished with exit code 134 (interrupted by signal 6: SIGABRT)

解决方案

  • 检查路径合法性:确保项目根目录、Java Agent的路径中没有空格、非ASCII字符(如中文、特殊符号)。如果存在这类字符,要么修改路径为纯英文无空格格式,要么对特殊字符做标准URL编码(比如空格替换为%20)。
  • 切换到JDK 17 LTS版本:JDK 19为非LTS版本,在Apple Silicon架构下的兼容性不如JDK 17。在IntelliJ中依次打开File > Project Structure > Project,将SDK切换为aarch64架构的JDK 17;同步修改Build工具(Gradle/Maven)的JDK配置,确保全局运行环境一致。
  • 移除无效Java Agent参数:打开IntelliJ的Run/Debug Configurations,查看VM options中的-javaagent:相关参数,暂时移除所有该类配置后重新启动项目。很多第三方插件或监控工具的agent可能在Apple Silicon上存在兼容性问题。
  • 清理IntelliJ缓存:通过File > Invalidate Caches...选择Invalidate and Restart,清理IDE缓存后重启,避免缓存导致的配置异常。
  • 确认JDK架构:在终端执行java -version,输出中需包含aarch64字样,确保使用的是Apple Silicon原生版本的JDK,而非x86架构版本(依赖Rosetta运行易引发兼容性问题)。

内容的提问来源于stack exchange,提问作者MatteoCampa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 15:35:29