Apache Pivot - “课堂上找不到的主要方法”

时间:2014-02-08 11:29:02

标签: java eclipse apache pivot

我使用Eclipse IDE遵循这些说明:

http://blogs.locusta.gr/argy/2011/09/setup-an-apache-pivot-project-in-eclipse/

所以现在我已经导入并附加了各自的Apache Pivot库。我试图在他们的网站上运行他们的代码,但缺少一个正确的主要方法。 Eclipse已将代码的第一行标记为错误。

这是我得到的错误:

Error: Main method not found in class HelloJava, please define the main method
as: public static void main(String[] args)

我理解错误,但主要方法应该包含什么? https://www.mail-archive.com/user@pivot.apache.org/msg06027.html 这家伙建议如下

public static void main(String[] args) {
    DesktopApplicationContext.main(HelloJava.class, args);
}

但是这会返回错误:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
DesktopApplicationContext cannot be resolved

有人有任何想法吗?这是代码,我很确定只有前几位很重要:

package org.apache.pivot.tutorials;

import java.awt.Color;
import java.awt.Font;

import org.apache.pivot.collections.Map;
import org.apache.pivot.wtk.Application;
import org.apache.pivot.wtk.Display;
import org.apache.pivot.wtk.HorizontalAlignment;
import org.apache.pivot.wtk.Label;
import org.apache.pivot.wtk.VerticalAlignment;
import org.apache.pivot.wtk.Window;

public class HelloJava implements Application {
private Window window = null;

public static void main(String[] args) {
DesktopApplicationContext.main(HelloJava.class, args);
}

@Override
public void startup(Display display, Map<String, String> properties) {
    window = new Window();

    Label label = new Label();
    label.setText("Hello World!");
    label.getStyles().put("font", new Font("Arial", Font.BOLD, 24));
    label.getStyles().put("color", Color.RED);
    label.getStyles().put("horizontalAlignment",
        HorizontalAlignment.CENTER);
    label.getStyles().put("verticalAlignment",
        VerticalAlignment.CENTER);

    window.setContent(label);
    window.setTitle("Hello World!");
    window.setMaximized(true);

    window.open(display);
}

@Override
public boolean shutdown(boolean optional) {
    if (window != null) {
        window.close();
    }

    return false;
}

@Override
public void suspend() {
}

@Override
public void resume() {
}
}

1 个答案:

答案 0 :(得分:0)

没关系,我修好了。我只需要删除代码的第一行,然后添加:

import org.apache.pivot.wtk.DesktopApplicationContext;