代码之家  ›  专栏  ›  技术社区  ›  Helen Neely

编辑器不包含主类型

  •  85
  • Helen Neely  · 技术社区  · 16 年前

    只需浏览scala网站上的示例scala代码,但在尝试运行它时遇到了一个恼人的错误。

    代码如下: http://www.scala-lang.org/node/45 . 在Eclipse上运行它时,我得到了一条消息:“编辑器不包含主类型”,这会阻止它运行。

    我有什么需要做的吗?比如把那个文件分成多个文件,或者怎么做?

    34 回复  |  直到 6 年前
        1
  •  34
  •   OpiesDad    9 年前

    我对Eclipse和scala有很多问题。如果您清理工作区并重建项目,这将有所帮助。

    有时Eclipse无法正确识别必须重新编译的文件:(

    编辑: 代码在Eclipse中运行良好

        2
  •  87
  •   milkplus    14 年前

    在Eclipse中,确保将源文件夹添加到ProjkProjks:G.java构建路径-GT源中。否则,main()函数可能不会包含在项目中。

        3
  •  27
  •   ultra99    13 年前

    你必须确保你的.java文件 eclipse中的.src文件夹。在我弄明白之前,我也有同样的问题。

        4
  •  21
  •   static    15 年前

    更简单的方法是关闭项目并重新打开它!

        5
  •  17
  •   Community CDub    6 年前

    只需确保您工作的文件夹已添加到构建路径:

    right-click 您的文件夹--gt; build Path --> Use as source Folder

    现在应该可以找到 main 其中

    希望这有帮助

    “”“” 右击 您的文件夹--gt; 生成路径 --> 用作源文件夹 “” 谢谢

    这确实解决了问题,

        6
  •  6
  •   Torsten    8 年前

    我也有同样的问题。我试过各种各样的东西。我才知道

    1. 我的.java文件没有链接
    2. 它们没有放在“src”文件夹中。

    我做的事情:

    项目属性& gt;gt;构建路径& gt;源

    • 使用“remove”选项删除了原始的“src”文件夹,该文件夹为空
    • 添加了包含“添加文件夹”选项的源文件.java文件

    这就解决了错误。

        7
  •  3
  •   rwc    14 年前

    快速解决方案:

    首先,排除包: 右键单击源包>>生成路径>>排除

    然后把它放回去: 右键单击源包>>生成路径>>包括

        8
  •  3
  •   shanethehat    14 年前

    你应该做的是,创建一个Java项目,但是确保把这个文件放在那个项目的包文件中,否则你会遇到同样的错误。

    enter image description here

        9
  •  3
  •   Mohit Singh    9 年前
    ***
    

    只需关闭并重新打开

    ***您在Eclipse中的项目。有时会出现连接问题。这解决了我的问题

        10
  •  2
  •   Daniel C. Sobral    16 年前

    该代码有效。你试过用scalac手工编译它吗?另外,你有没有把你的文件叫做“地址簿”,都是小写的,比如对象的名字?

    另外,我发现Eclipse出于某种原因将主类设置为“.addressbook”而不是“addressbook”。

        11
  •  2
  •   agf    14 年前

    创建文件的方式

    选择右侧,您将找到文件名,

    在下面将找到SRC文件夹,您右键单击选择-->类选项

    应该创建他们的您的文件

        12
  •  2
  •   Sahil Pruthi    11 年前

    请确保.java文件既存在于STR包中,也存在于其他包中。如果具有主函数的Java文件在所有包外,则引发此错误。

        13
  •  2
  •   Fei    10 年前

    您可以尝试从Eclipse的大纲侧栏运行主函数。

    solution

        14
  •  1
  •   KullDox    15 年前

    我也有这个问题。解决方案是确保Eclipse将项目创建为Java项目。只需创建一个新的Java项目,并将您的类复制到SRC文件夹中(并导入最终的依赖项)。这样可以解决问题。

        15
  •  1
  •   MGM    14 年前

    正确的答案是:scala库需要在buildPath中的JRE库之前。

    JAVA Buffic PATH &订单与导出 将scala库移到顶部

        16
  •  1
  •   user2704136    11 年前

    我从文件系统(在Eclipse HeliOS下)导入的Java项目遇到了这个问题。这里有一个提示:SRC代码似乎根本没有被编译,因为没有“bin”目录出现。

    我必须从头开始创建一个Java项目(使用向导),然后比较 .project 非工作和工作项目的文件。

    提供“编辑器不包含主类型”的项目在.project文件中将其作为“buildspec”:

    <buildSpec>
    </buildSpec>
    

    但是工作项目把这个叫做“建筑规范”:

    <buildSpec>
        <buildCommand>
            <name>org.eclipse.jdt.core.javabuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    

    我把这个抄了进去,导入的项目就成功了。

    我知道我的答案是Java,但同样的可能是Scala项目的问题。

        17
  •  1
  •   Vamsi Tallapudi    11 年前

    可能是您创建的文件在SRC(源)文件夹之外。试图从源文件夹外部的.java文件调用类对象(从SRC文件夹中的文件)导致相同的错误。将.java文件复制到源文件夹,然后构建它。错误将消失。

        18
  •  1
  •   jacruz    10 年前

    我也有同样的问题。我把主类从SRC包中取出,放在另一个文件夹中。我把它移到正确的文件夹里解决了

        19
  •  1
  •   MikeG    9 年前

    从命令行运行“eclipse-clean-refresh”。这解决了所有其他解决方案都失败时的问题。

        20
  •  1
  •   AalekhG    8 年前

    这可能是Java构建路径的问题。 尝试以下步骤:

    1. 转到项目属性
    2. 转到Java构建路径
    3. 转到“源”选项卡并添加项目的SRC文件夹

    这样可以解决问题。

        21
  •  1
  •   user3801543    8 年前

    如果是Maven项目,请检查在SRC/MeN/Java环境下创建的Java文件

    如果您没有获得,请更改JRE路径并在上面的文件夹结构中创建Java文件

        22
  •  0
  •   djangofan    14 年前

    对于我来说,在Eclipse3.6中,当我的主要方法不是公共方法时,就会出现这个问题。我的主要方法如下:

    static void main(String[] args) 
    

    杜布格一个人无法发现这一点。我很惊讶日食忽视了这一点。

        23
  •  0
  •   Sergiu    13 年前

    在最坏的情况下-从一开始就用所有导入再次创建项目。在我的例子中,其他的选择都不起作用。此类错误提示项目设置中存在错误。我曾经设法解决了这个问题,但一旦进一步的发展,错误又回来了。从一开始,重新创建所有内容就帮助我理解和优化了一些链接,现在我确信它可以正常工作。

        24
  •  0
  •   Unni Kris Jan    12 年前

    遵循以下步骤:

    1. 将所有.java文件备份到其他位置
    2. 删除整个Java项目
    3. 通过右键单击root &新建新Java项目
    4. 将所有文件还原到新位置!!
        25
  •  0
  •   Mike    12 年前

    文件>>将现有项目导入工作区>>选择存档文件>>浏览并定位文件>>完成。如果它已经以其他方式导入,请将其删除并尝试该方法。在我尝试之前,我也遇到过同样的问题。

        26
  •  0
  •   Daniel Ashton    11 年前

    还有一件事要检查:确保源文件包含与它所在的子目录对应的正确的包声明。当试图运行在子目录中的文件中声明但缺少package语句的“main type”时,可以看到op提到的错误。

        27
  •  0
  •   Hunsu    10 年前

    更改源文件夹后,我也遇到了这个问题。有效的解决方案就是编辑并保存文件。

        28
  •  0
  •   George Santhosh    9 年前

    尝试“更新项目”。一旦我这样做,运行的Java应用程序选项就出现了。

        29
  •  0
  •   Vlad.Bachurin Craig Miller    9 年前

    在我的“你好世界”案例中,这个问题的原因是 main() 方法在scala中 class .

    我把 主体() scala下的方法 object 错误就消失了。

    那是因为斯卡拉 对象 在Java术语中,实体内部只有静态成员和方法。

    这就是为什么JAVA的 public static void main() 在scala中,必须放在 对象 .

    (斯卡拉 不能包含静态的)

        30
  •  0
  •   WantaBeCoder    8 年前

    出现错误的原因:“编辑器不包含主类型”

    Eclipse Neon中遇到错误

    操作系统:Windows 10 Pro

    当您从一个拇指驱动器复制您的源文件夹,并忽略eclipse_projects.metadata文件夹时。

    除了新安装之外,您还必须确保合并来自(thrumb驱动器)f:eclipse_projects.metadata.plugins的文件。

    这些插件是在创建类时从SDK中获取的一些库代码。我真的完全取决于你将javax.swing.*;-----导入到你的文件中。因为你要把它转移过来,在接受文件夹中已经存在的插件的跳过功能的同时,一定要用一个简单的复制粘贴手动合并------eclipse eu projects.metadata.plugins。

    对于Windows10:您可以按照类似的文件层次结构模式找到工作文件夹。

    C:Users>Mikes Laptop>Workspace>.Metadata>.Plugins<---在此合并插件

    推荐文章