लोड करते समय "ऑनएक्शन" को हल करने में त्रुटि मुझे चलाने के लिए एक सरल हैलो वर्ल्ड एप्लिकेशन प्राप्त करने में कुछ समस्याएं आ रही हैं। यह निम्न त्रुटि फेंक है:FXML
Exception in Application start method
Exception in thread "main" java.lang.RuntimeException: Exception in Application start method
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$152(LauncherImpl.java:182)
at com.sun.javafx.application.LauncherImpl$$Lambda$2/1329552164.run(Unknown Source)
at java.lang.Thread.run(Thread.java:745)
Caused by: javafx.fxml.LoadException: Error resolving onAction='#printHello', either the event handler is not in the Namespace or there is an error in the script.
/home/willi/java/IdeaProjects/JavaFXApp/out/production/JavaFXApp/sample/sample.fxml:23
at javafx.fxml.FXMLLoader.constructLoadException(FXMLLoader.java:2601)
at javafx.fxml.FXMLLoader.access$100(FXMLLoader.java:104)
at javafx.fxml.FXMLLoader$Element.processEventHandlerAttributes(FXMLLoader.java:606)
at javafx.fxml.FXMLLoader$ValueElement.processEndElement(FXMLLoader.java:766)
at javafx.fxml.FXMLLoader.processEndElement(FXMLLoader.java:2827)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2536)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2445)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3218)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3179)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3152)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3128)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3108)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:3101)
at sample.Main.start(Main.java:13)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$159(LauncherImpl.java:863)
at com.sun.javafx.application.LauncherImpl$$Lambda$57/2085742749.run(Unknown Source)
at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$172(PlatformImpl.java:326)
at com.sun.javafx.application.PlatformImpl$$Lambda$52/738441956.run(Unknown Source)
at com.sun.javafx.application.PlatformImpl.lambda$null$170(PlatformImpl.java:295)
at com.sun.javafx.application.PlatformImpl$$Lambda$55/689939224.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$171(PlatformImpl.java:294)
at com.sun.javafx.application.PlatformImpl$$Lambda$53/1382865734.run(Unknown Source)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$null$48(GtkApplication.java:139)
at com.sun.glass.ui.gtk.GtkApplication$$Lambda$43/704249306.run(Unknown Source)
... 1 more
मेरे Controller.java फ़ाइल तरीकों printHello
और printWorld
उन में परिभाषित किया गया है, और मैं जब मैं उनके संबंधित बटनों की प्रेस उन्हें फोन करना चाहते हैं। कोड निम्नानुसार है: पैकेज नमूना;
import javafx.fxml.FXML;
import javafx.scene.control.Button;
import java.awt.event.ActionEvent;
public class Controller {
@FXML
private Button helloButton;
@FXML
private Button worldButton;
@FXML
private void printHello(ActionEvent e){
System.out.println("Hello");
}
@FXML
private void printWorld(ActionEvent f){
System.out.println("World");
}
}
`मेरी fxml फ़ाइल में, मैं दो बटन परिभाषित किया गया है। उनका कोड निम्नानुसार है:
<Button fx:id="helloButton" layoutX="46.0" layoutY="87.0" mnemonicParsing="false" onAction="#printHello" text="Hello" />
<Button fx:id="worldButton" layoutX="97.0" layoutY="87.0" mnemonicParsing="false" onAction="#printWorld" text="World" />
मेरा कोड इस त्रुटि को क्यों फेंक रहा है?
भयानक प्रारूपण के लिए अग्रिम में क्षमा करें, यह मेरी पहली बार पोस्टिंग है।
करने के लिए वास्तविक कोड आप को चलाने के लिए कोशिश कर रहे हैं पोस्ट करें। – mjuarez
यह काम करना चाहिए। क्या आप सुनिश्चित कर सकते हैं कि आपने fxml में सही नियंत्रक वर्ग का नाम प्रदान किया है? या, नियंत्रक के लिए पैकेज नामों के साथ, यहां पूर्ण fxml पोस्ट करें। – ItachiUchiha