【问题标题】:Eclipse returns error on run: "java selection does not contain a main type"Eclipse 运行时返回错误:“java 选择不包含主要类型”
【发布时间】:2012-01-08 21:50:09
【问题描述】:

我无法在 Eclipse 中运行以下代码(Eclipse IDE for Java Developers,版本:Indigo Service Release 1,Build id:20110916-0149),我认为我在 Eclipse 中可能存在配置问题(但我不知道什么或在哪里):

class Saluton {
    public static void main(String args[])
    {
        String greeting = "Saluton mondo!";
        System.out.println(greeting);
    }
}

我还在 Macintosh 10.7.2 上运行 Java 6 (1.6.0_29-b11-402)。

当我运行它时,我得到了错误:

"java 选择不包含主类型"

但我很确定我的课写得对...?我已经查过了这个错误,目前还不能解释这个问题。

TIA 的任何想法或意见!

【问题讨论】:

  • 你是如何尝试运行它的?
  • 从 Eclipse 工具栏中的“运行”按钮。我曾尝试同时作为应用程序和小程序运行,但都失败了。
  • 如果您查看运行配置,它是否显示正确的类等?
  • 人力资源部。我真的不知道,但我会检查一下。谢谢!
  • 需要在源码目录下;该类甚至不会被编译。另外,把它放在一个包里。

标签: java eclipse-indigo


【解决方案1】:

我认为您必须将您的课程公开,否则将无法正常工作?

【讨论】:

    【解决方案2】:

    编辑:我之前的回答不正确。 JLS 说您可以在两端声明带有括号的数组。 See here for some examples。我的错。

    您是否在 Eclipse 中验证了您的配置,使其知道在哪里可以找到 Java 编译器和 JVM?您可以通过右键单击项目并转到 PropertiesJava Build Path

    来检查项目特定的库

    您也可以通过点击WindowPreferencesJavaInstalled JREs来检查JRE的安装情况。确保此处列出了您要使用的 JRE,并且路径正确。

    【讨论】:

    • 不,不是;他们可以去任何一个地方。约定将它们放在类型上,但这不是必需的。 JLS 10.2
    • 我说完后才检查过。在那里我再次拍摄,然后提问。我会适当地编辑它。
    • OP添加的截图几乎概括了它。另外,如果它没有尝试运行并且没有找到任何东西,则该异常不会出现。
    【解决方案3】:

    另一种解决方案(简单直接):

    在 Eclipse 中:文件 -> 重启

    【讨论】:

      【解决方案4】:

      右击你的类Saluton并选择Run as --> Java Application

      它应该可以工作。

      【讨论】:

      • 当我这样做时,我在控制台中得到以下信息:线程“主”java.lang.NoClassDefFoundError 中的异常:原因:java.lang.ClassNotFoundException:在 java.net.URLClassLoader$1。在 java.net.URLClassLoader.findClass(URLClassLoader.java:190) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:306) 的 java.security.AccessController.doPrivileged(Native Method) 运行(URLClassLoader.java:202)在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:247)
      • 你的项目设置太混乱了。找一个可以帮助你的 eclipse 专家。
      【解决方案5】:

      好的,所以我是一个菜鸟,我来这里是因为我遇到了这个问题。我检查了我所有的课程路径和所有内容,它们是正确的。实际上,我一直将所有文件放在 JRE 系统库文件夹中,而不是源文件夹中。我不确定这是否是您的问题,但是当我将代码文件移动到 src 文件夹时,它似乎对我有用。

      【讨论】:

        【解决方案6】:

        我花了很长时间解决这个问题;最终我在我的项目中创建了一个包,并将我的源代码添加到该包中,它编译并运行了!我正在学习巫师的规则!

        【讨论】:

          【解决方案7】:

          如果您将课程设为公开,它将起作用!

          【讨论】:

          • 请不要编造词(如“u”或类似词) - 这会使您的答案难以阅读,而且看起来不专业。
          猜你喜欢
          • 1970-01-01
          • 2013-02-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-12-25
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多