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

在Eclipse中运行可执行Jar文件时抛出异常求助

问题描述

Jar文件在Windows命令提示符中运行正常,但在Eclipse中运行Java源代码或Jar文件时抛出以下异常:

Exception in thread "main" java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/io/IOUtils
    at edu.ucla.cs.examplecheck.utils.PatternUtils.loadPattern(PatternUtils.java:37)
    at edu.ucla.cs.examplecheck.APIMisuseDetector.main(APIMisuseDetector.java:48)
    ... 5 more
Caused by: java.lang.ClassNotFoundException: org.apache.commons.io.IOUtils
    at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:587)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
    ... 7 more

解决办法

1. 检查Eclipse项目依赖配置

  • 确认commons-io依赖包已添加到项目构建路径:右键项目 → Build Path → Add External Archives,选择本地的commons-io-x.x.x.jar;如果用Maven/Gradle,确保依赖声明正确并同步到项目。
  • 开启依赖的导出设置:右键项目 → Build Path → Configure Build Path → 切换到Order and Export标签,勾选commons-io对应的Jar包,保证它被纳入运行时类路径。

2. 验证Jar打包方式

  • 若Jar是Eclipse导出的,确认导出时勾选了Package required libraries into generated JAR,让依赖包被打包进目标Jar,避免运行时缺失类。
  • 对比CMD运行的类路径:CMD中可能通过-cp参数指定了包含commons-io的路径,把这个配置同步到Eclipse的运行类路径中。

3. 清理重建项目

  • 执行Project → Clean,选择当前项目清理编译缓存,再重新构建。
  • 重启Eclipse,解决IDE缓存引发的类加载异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 04:15:44