Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ControlsFX中的RangeSloider问题_Java_Javafx_Controlsfx_Rangeslider - Fatal编程技术网

Java ControlsFX中的RangeSloider问题

Java ControlsFX中的RangeSloider问题,java,javafx,controlsfx,rangeslider,Java,Javafx,Controlsfx,Rangeslider,我试图在程序中实现RangeSloider类,但收到以下错误: Exception in Application start method java.lang.reflect.InvocationTargetException at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethod

我试图在程序中实现RangeSloider类,但收到以下错误:

Exception in Application start method
java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.base/java.lang.reflect.Method.invoke(Unknown Source)
    at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(Unknown Source)
    at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.base/java.lang.reflect.Method.invoke(Unknown Source)
    at java.base/sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.lang.RuntimeException: Exception in Application start method
    at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(Unknown Source)
    at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(Unknown Source)
    at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalAccessError: class impl.org.controlsfx.behavior.RangeSliderBehavior (in unnamed module @0x74bf073e) cannot access class com.sun.javafx.scene.control.inputmap.InputMap$Mapping (in module javafx.controls) because module javafx.controls does not export com.sun.javafx.scene.control.inputmap to unnamed module @0x74bf073e
    at impl.org.controlsfx.behavior.RangeSliderBehavior.<init>(RangeSliderBehavior.java:67)
    at impl.org.controlsfx.skin.RangeSliderSkin.<init>(RangeSliderSkin.java:95)
    at org.controlsfx.control.RangeSlider.createDefaultSkin(RangeSlider.java:194)
    at javafx.controls/javafx.scene.control.Control.doProcessCSS(Unknown Source)
    at javafx.controls/javafx.scene.control.Control.access$000(Unknown Source)
    at javafx.controls/javafx.scene.control.Control$1.doProcessCSS(Unknown Source)
    at javafx.controls/com.sun.javafx.scene.control.ControlHelper.processCSSImpl(Unknown Source)
    at javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(Unknown Source)
    at javafx.graphics/javafx.scene.Parent.doProcessCSS(Unknown Source)
    at javafx.graphics/javafx.scene.Parent.access$400(Unknown Source)
    at javafx.graphics/javafx.scene.Parent$1.doProcessCSS(Unknown Source)
    at javafx.graphics/com.sun.javafx.scene.ParentHelper.processCSSImpl(Unknown Source)
    at javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(Unknown Source)
    at javafx.graphics/javafx.scene.Parent.doProcessCSS(Unknown Source)
    at javafx.graphics/javafx.scene.Parent.access$400(Unknown Source)
    at javafx.graphics/javafx.scene.Parent$1.doProcessCSS(Unknown Source)
    at javafx.graphics/com.sun.javafx.scene.ParentHelper.processCSSImpl(Unknown Source)
    at javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(Unknown Source)
    at javafx.graphics/javafx.scene.Parent.doProcessCSS(Unknown Source)
    at javafx.graphics/javafx.scene.Parent.access$400(Unknown Source)
    at javafx.graphics/javafx.scene.Parent$1.doProcessCSS(Unknown Source)
    at javafx.graphics/com.sun.javafx.scene.ParentHelper.processCSSImpl(Unknown Source)
    at javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(Unknown Source)
    at javafx.graphics/javafx.scene.Node.processCSS(Unknown Source)
    at javafx.graphics/javafx.scene.Scene.doCSSPass(Unknown Source)
    at javafx.graphics/javafx.scene.Scene.preferredSize(Unknown Source)
    at javafx.graphics/javafx.scene.Scene$2.preferredSize(Unknown Source)
    at javafx.graphics/com.sun.javafx.scene.SceneHelper.preferredSize(Unknown Source)
    at javafx.graphics/javafx.stage.Window$12.invalidated(Unknown Source)
    at javafx.base/javafx.beans.property.BooleanPropertyBase.markInvalid(Unknown Source)
    at javafx.base/javafx.beans.property.BooleanPropertyBase.set(Unknown Source)
    at javafx.graphics/javafx.stage.Window.setShowing(Unknown Source)
    at javafx.graphics/javafx.stage.Window.show(Unknown Source)
    at javafx.graphics/javafx.stage.Stage.show(Unknown Source)
    at minimalist.DoubleSliderInterface.start(DoubleSliderInterface.java:104)
    at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(Unknown Source)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$11(Unknown Source)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$9(Unknown Source)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(Unknown Source)
    at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(Unknown Source)
    at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
    at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(Unknown Source)
    ... 1 more
Exception running application minimalist.DoubleSliderInterface

感谢您的帮助。

他们的bitbucket页面上已经有错误报告。看起来它与java9不兼容+

我没有阅读此特定控件的代码,但是您可以复制所需的代码并删除使用
InputMap
相关类的部分


除此之外,您可能最好降级到java8或使用另一个ui元素来模拟类似的行为。

在运行应用程序时向VM参数添加
--add exports=javafx.controls/com.sun.javafx.scene.control.inputmap=ALL-UNNAMED
,这将解决问题。回答感谢@kleopatra

您确实在使用吗?版本8.x不会声明所需的模块依赖项,因此会出现如下模块错误。是,该文件命名正确,并从提供的链接下载,我通过重新下载该文件再次进行了检查。
-添加导出javafx.controls/com.sun.javafx.scene.control.inputmap=ALL-UNNAMED
到运行时配置实际上,错误消息非常有用-每当出现“无法访问,因为…”您可以将确切的原因添加为运行时参数。显然,添加的内容需要精确到“--add exports=javafx.controls/com.sun.javafx.scene.control.inputmap=ALL-UNNAMED”,并具有精确的间距,以便eclipse能够识别它。谢谢你的评论!
        final RangeSlider blur = new RangeSlider(0,30,0,30);
        Text blurTitle = new Text("Blur");
        Text blurMin = new Text();
        blurMin.textProperty().bindBidirectional(blur.lowValueProperty(),converter);
        Text blurMax = new Text();
        blurMax.textProperty().bindBidirectional(blur.highValueProperty(),converter);
        HBox blurBox = new HBox();
        blurBox.getChildren().addAll(blurMin,blur,blurMax);
        blurBox.setPadding(new Insets(5));
        blurBox.setSpacing(10);