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

使用Eclipse运行Coursera杜克Java课程代码出现NoClassDefFoundError如何解决

报错根因

java.lang.NoClassDefFoundError: edu/duke/FileResource 说明编译阶段你已经正确引入了edu.duke的依赖包,但JVM在运行程序时没有在类路径下找到对应的类,这是Eclipse和课程推荐的BlueJ环境的配置差异导致的。

解决步骤
  • 首先确认依赖包已正确引入编译路径
    右键项目 → Build Path → Configure Build Path → 切换到Libraries标签,确认你使用的edu.duke相关jar包(课程配套的duke.jar或整合包algs4.jar)已添加到Classpath分类下,无报错标识。
  • 其次将依赖包添加到运行时类路径
    1. 右键WordLengthsTest类 → Run As → Run Configurations
    2. 找到当前你使用的Java应用运行配置,切换到Classpath标签
    3. 选中User Entries,点击右侧的Add JARs(如果jar包存放在当前项目目录内)或Add External JARs(如果jar包是项目外的本地文件)
    4. 选择对应的edu.duke jar包,点击Apply保存配置后重新运行即可
额外注意事项

你当前的代码违反了Java语法规范:单个.java源文件中只能存在一个和文件名同名的public类,你需要将WordLengthsTest类单独拆分到名为WordLengthsTest.java的文件中,避免后续出现编译异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 02:54:03