首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Eclipse无法确定主类。

Eclipse无法确定主类。
EN

Stack Overflow用户
提问于 2015-07-25 16:53:18
回答 2查看 673关注 0票数 2

到目前为止我的代码是:

代码语言:javascript
复制
package graphics;

import acm.graphics.*;
import acm.program.*;

public class project1 {
    public class graphics extends GraphicsProgram {
        private static final long serialVersionUID = 1L;
        public void run() {
            add( new GLabel( "hello, world", 100, 75));
        }
    }
}

我知道错误:

线程" main“acm.util.ErrorException中的异常:无法确定主类。在acm.program.Program.main(Program.java:1358)

关于在线引用,我已经谈到了这一点,除了我在运行配置中自己做的两次修改,将acm.program.Program设置为主选项卡中的主类,以及将code=acm.program.Program设置为程序参数,不确定这是否相关。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-25 17:07:33

您需要删除外部类project1。参见这里的文档图2-3:

http://cs.stanford.edu/people/eroberts/jtf/tutorial/UsingTheGraphicsPackage.html

代码语言:javascript
复制
package graphics;

import acm.graphics.*;
import acm.program.*;

public class graphics extends GraphicsProgram {
        private static final long serialVersionUID = 1L;
        public void run() {
            add( new GLabel( "hello, world", 100, 75));
        }
}

另外,你真的应该给你的班级一个大写的第一个字母。

正如@Billthe蜥蜴所指出的,您还需要确保java文件的名称与类的名称相匹配。因此,如果您的类名为Graphics,那么您的java文件应该称为Graphics.java

票数 5
EN

Stack Overflow用户

发布于 2015-07-25 18:49:21

您正在获得错误,因为您没有主方法,而且如果您想要运行的程序没有主方法,JVM将无法运行该程序。为了运行和编译该程序,您需要有一个让JVM理解编译该类的主要方法。

下面是正确的方法:如果您不使用外部类,您可以删除它。

代码语言:javascript
复制
import acm.graphics.*;
import acm.program.*;

public class Graphics extends GraphicsProgram {

    private static final long serialVersionUID = 1L;
    public void run() {
        add( new GLabel( "hello, world", 100, 75));
    }

    public static void main(String[] args) {
        Graphics g = new Graphics();
        g.run();
    }
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31628884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档