我无法运行我的javafx - kotlin应用程序。
我的初学者课程
class Starter : Application() {
override fun start(primaryStage: Stage?) {
val root : Parent = FXMLLoader.load(javaClass.getResource("view/main.fxml"))
primaryStage?.title = "Title"
primaryStage?.scene = Scene(root)
primaryStage?.show()
}
fun main(args: Array<String>) {
launch(args)
}
}
我无法将参数“args”传递给“launch”方法,因为编译器说:
错误:(19,9)Kotlin:无法调用以下任何函数 使用提供的参数:public open fun launch(p0:Class!,vararg p1:String!):在 javafx.application.Application public open fun launch(vararg p0: String!):在javafx.application.Application
中定义的单位
如果我在没有参数的情况下尝试调用“启动”方法,我有以下异常
线程“main”java.lang.reflect.InvocationTargetException中的异常 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:498)at sun.launcher.LauncherHelper $ FXHelper.main(LauncherHelper.java:767) 引起:java.lang.NullPointerException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:498)at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389) 在 com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328) ......还有5个
答案 0 :(得分:2)
您需要使用传播运算符
fun main(args: Array<String>) {
Application.launch(Starter::class.java, *args)
}