Javafx 2 EclipseHelios中的JavaFX:IllegalArgumentException(Css2Bin.java:44)
我在EclipseHelios中尝试启动并制作JavaFX2.0时遇到了这个错误Javafx 2 EclipseHelios中的JavaFX:IllegalArgumentException(Css2Bin.java:44),javafx-2,Javafx 2,我在EclipseHelios中尝试启动并制作JavaFX2.0时遇到了这个错误 Exception in thread "main" java.lang.IllegalArgumentException: expected file name as argument at com.sun.javafx.css.parser.Css2Bin.main(Css2Bin.java:44) 最近,我正在逐步开始在EclipseIDE中使用JavaFX2.0 从此- 我不知道怎么修
Exception in thread "main" java.lang.IllegalArgumentException: expected file name as argument
at com.sun.javafx.css.parser.Css2Bin.main(Css2Bin.java:44)
最近,我正在逐步开始在EclipseIDE中使用JavaFX2.0
从此-我不知道怎么修,有人能帮我吗?谢谢
- 将jfxrt.jar添加到构建路径
- 转到引用库中的属性jfxrt.jar
- 转到运行/调试设置>Css2Bin
- 标记复选框:
- 搜索主类时包括系统库
- 搜索主类时包括继承的主类
现在要快乐 如果你不依赖于在太阳神中跑步,我建议你试试e(fx)clipse。你可以在找到它,我也有同样的问题(在e(fx)clipse中)。我尝试了上面提到的解决方案,但仍然有同样的问题。我添加了一个新的运行配置,并将其直接指向thar had Main类,该类对我有效。您很容易需要一个扩展应用程序类的主类来启动参数,如下所示:
public class Test extends Application {
public static void main(String[] args) {
// Launch the Application
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
//JavaFx load the GUI from FXML file ... super
Parent root = FXMLLoader.load(getClass().getResource("yourGUI.fxml"));
primaryStage.setTitle("App Name");
primaryStage.setScene(new Scene(root));
primaryStage.show();
}
}此问题源于Css2Bin被设置为要运行的应用程序。这意味着eclipse尝试将Css2Bin作为主应用程序运行,当它没有收到任何命令行参数时,Css2Bin将崩溃
解决这一问题的最简单方法是从运行/调试设置(项目设置)中删除Css2Bin,并在菜单中选择自己的应用程序的位置添加一个Css2Bin。好吧,这些答案似乎说明了您需要做什么,但它们不是很直接。
相信我,我已经试过了,而且效果很好。假设您已将jfxrt.jar添加到参考库中 现在 右键单击项目->属性->运行/调试设置->单击Css2Bin-> 主要类别: 单击搜索按钮 将com.sun.javafx.css.parser.Css2Bin更改为项目主类 及 标记复选框
- 搜索主类时包括系统库
- 搜索主类时包括继承的主类