如何使用ControlsFX在JavaFX中实现登录对话框

如何使用ControlsFX在JavaFX中实现登录对话框,java,javafx-8,Java,Javafx 8,我试图从中使用自定义对话框,但引发此异常的代码无效 java.lang.NoClassDefFoundError: com/sun/javafx/scene/traversal/ParentTraversalEngine at org.controlsfx.control.ButtonBar.<init>(ButtonBar.java:414) at org.controlsfx.control.ButtonBar.<init>(ButtonBar.java:357) a

我试图从中使用自定义对话框,但引发此异常的代码无效

java.lang.NoClassDefFoundError: com/sun/javafx/scene/traversal/ParentTraversalEngine
at org.controlsfx.control.ButtonBar.<init>(ButtonBar.java:414)
at org.controlsfx.control.ButtonBar.<init>(ButtonBar.java:357)
at org.controlsfx.dialog.Dialog.createButtonPanel(Dialog.java:1034)
at org.controlsfx.dialog.Dialog.createCenterPanel(Dialog.java:1029)
at org.controlsfx.dialog.Dialog.buildDialogContent(Dialog.java:950)
at org.controlsfx.dialog.Dialog.show(Dialog.java:320)
....
java.lang.NoClassDefFoundError:com/sun/javafx/scene/traversal/ParentTraversalEngine
位于org.controlsfx.control.ButtonBar(ButtonBar.java:414)
位于org.controlsfx.control.ButtonBar(ButtonBar.java:357)
位于org.controlsfx.dialog.dialog.createButtonPanel(dialog.java:1034)
位于org.controlsfx.dialog.dialog.createCenterPanel(dialog.java:1029)
位于org.controlsfx.dialog.dialog.buildDialogContent(dialog.java:950)
位于org.controlsfx.dialog.dialog.show(dialog.java:320)
....

另一个问题是,没有一个例子来说明如何将它集成到一个真实世界的应用程序中,至于在哪里放置这个代码来验证用户,然后继续加载你的应用程序,以及如何使用这个代码在一个动作的中间进行认证,因此需要更可重用。


我正在使用maven的Java 8.0u20和ControlsFX 8.0.620检查您的Java版本,很可能您使用的是比8u20更旧的版本

您可以将此行添加到应用程序中,以在运行时检查正在使用的JRE

System.out.println(System.getProperty("java.version"));

您确定使用的是Java 8u20吗?这是一个已知的错误,如果运行ControlsFX 8.0.6_20和8u11I在Java控制面板中查找它,它说版本是Java 8 Update 20(build 1.8.0_20-b26),您可以添加行System.out.println(System.getProperty(“Java.version”);可以肯定的是(您的机器上可能安装了多个版本,eclipse/您的IDE可能指向另一个版本…哦,您是对的。它打印出
1.8.0_05
Thank@Adam,在确定如何更新它的同时,第二个问题如何?我稍后再看,对不起,mo很忙。