如果主类没有main方法,则sbt one-jar不运行

时间:2016-03-30 12:02:37

标签: scala sbt javafx-8 sbt-onejar

我正在尝试在javafx中开发一个示例scala应用程序。我使用sbt-one-jar打包应用程序。我的班级MainClass扩展了javafx Application,后者又提供了主要方法。我可以在IDE中右键单击并成功运行应用程序。但是,在使用sbt-one-jar创建可执行jar之后,在尝试运行jar时,我发现主类未找到错误,如下所示:

  

线程“main”中的异常java.lang.NoSuchMethodException:   com.app.MainClass.main([Ljava.lang.String)           在java.lang.Class.getMethod(未知来源)           在com.simontuffs.onejar.Boot.run(Boot.java:339)           在com.simontuffs.onejar.Boot.main(Boot.java:166)

我将Build.scala中的Main Class作为

mainClass in oneJar := Some("com.app.MainClass")

MainClass.java:

public class MainClass extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        Parent root = FXMLLoader.load(getClass().getResource("Home.fxml"));
        Scene scene = new Scene(root, 600, 600);
        primaryStage.setTitle("My-App");
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}

如果我创建另一个scala应用程序并扩展App,我可以运行创建的one-jar。我怎样才能解决这个问题呢?

0 个答案:

没有答案