1

我在 Eclipse 上启动了一个小型 Java 项目,其中包含(default package)中的两个类。一切正常,但是当我尝试使用相同的两个类(每个类中都有包名称声明)创建一个新包(比如说 net.server)时,我得到:

Exception in thread "main" java.lang.ClassNotFoundException: MyClassName

我没有使用 Java 和 Eclipse 的经验,也不知道是什么原因造成的。

4

3 回答 3

6

我会尝试删除旧的运行配置:从菜单中选择Run > Run Configurations,在左侧找到您的配置,选择它并单击其上方的删除按钮,最后重新运行您的应用程序。

于 2013-08-23T20:08:00.660 回答
1

您可能没有在主文件(运行该main方法的文件)中更新您的导入。ClassNotFoundException意味着类加载器在给定当前指令的情况下找不到某个类。

Eclipse 应该会向您发送有关此的警告(用红色强调有问题的导入)。要直接组织给定文件的导入,请在编辑时使用++Ctrl快捷方式。ShiftO

于 2013-08-23T19:48:53.153 回答
1

  • 从不 建议不要使用默认包。作为标准,根包以您的项目命名(例如,如果项目是net.server.project,则根包具有相同的名称)
  • 请注意 Eclipse 在移动重构方面存在问题(我不知道这是否已在 Kepler 4.3 中修复)
  • 由于您只有两个类,我建议您从头开始创建这两个类,并手动将旧类的功能复制到新类中。这是确保一切正常的最安全方法。
  • 哦,我希望您的src文件夹是源文件夹,而不是普通文件夹。

    于 2013-08-23T19:50:29.177 回答