2015-12-31 3 views
0

Je suis très, très nouveau à l'utilisation de JavaFX et FXML en général, et j'ai rencontré un petit problème que je n'ai pas réussi à résoudre par des recherches répétées sur Google, ou recherche ici sur Stack Exchange. Alors que d'autres ont eu des problèmes similaires, je n'ai pas été en mesure de reproduire leurs solutions dans mon propre projet.Eclipse - JavaFX FXML LoadException

À l'heure actuelle, j'essaie principalement de tester JavaFX avec FXML et d'avoir une idée ... mais je n'arrive même pas à le charger, car FXMLLoader me donne l'erreur suivante.

javafx.fxml.LoadException: /C:/Users/Dylon/workspace/Convergence_titanExplorationModule/bin/com/test/fxml/ExplorationModuleUI.fxml

à javafx.fxml.FXMLLoader.constructLoadException (Information inconnue Source) à javafx.fxml.FXMLLoader.importClass (Source inconnue) à javafx.fxml.FXMLLoader.processImport (Source inconnue) à javafx.fxml.FXMLLoader.processProcessingInstruction (Source inconnue) à javafx.fxml.FXMLLoader.loadImpl (Source inconnue) à javafx.fxml.FXMLLoader.loadImpl (source inconnue) à javafx.fxml.FXMLLoader.loadImpl (Source inconnue) à javafx.fxml.FXMLLoader.loadImpl (Source inconnue) à javafx.fxml.FXMLLoader.loadImpl (Source inconnue) à javafx.fxml.FXMLLoader.loadImpl (Source inconnue) à javafx.fxml.FXMLLoader.loadImpl (source inconnue) à javafx.fxml.FXMLLoader.load (source inconnue) à com.test.fxml.Main.start (Main.java:14) à com.sun .javafx.application.LauncherImpl.lambda $ launchApplication1 163 $ (Source inconnue ) à com.sun.javafx.application.PlatformImpl.lambda $ runAndWait 176 $ (Source inconnue ) à com.sun.javafx.application.PlatformImpl.lambda $ null $ 174 (Unknown Source) à java.security.Acces sController.doPrivileged (Native Method) à com.sun.javafx.application.PlatformImpl.lambda $ runLater 175 $ (Source inconnue ) à com.sun.glass.ui.InvokeLaterDispatcher $ Future.run (Source inconnue ) à com .sun.glass.ui.win.WinApplication._runLoop (natif méthode) à com.sun.glass.ui.win.WinApplication.lambda $ null $ 149 (source inconnue) à java.lang.Thread.run (Inconnu Source) causée par: java.lang.ClassNotFoundException à javafx.fxml.FXMLLoader.loadType (Source inconnue) ... 21 plus

maintenant, voici le code que je travaille avec ...

package com.test.fxml; 

import javafx.application.Application; 
import javafx.fxml.FXMLLoader; 
import javafx.stage.Stage; 
import javafx.scene.Parent; 
import javafx.scene.Scene; 


    public class Main extends Application { 
     @Override 
     public void start(Stage primaryStage) { 
      try { 
       Parent root = FXMLLoader.load(getClass().getResource("/com/test/fxml/ExplorationModuleUI.fxml")); 
       Scene scene = new Scene(root,400,400); 
       primaryStage.setScene(scene); 
       primaryStage.show(); 
      } catch(Exception e) { 
       e.printStackTrace(); 
      } 
     } 

Voici mon fichier FXML, nommé ExplorationModuleUI.fxml ...

<?xml version="1.0" encoding="UTF-8"?> 

<?import javafx.scene.layout.*?> 
<?import javafx.scene.control*?> 

<BorderPane xmlns:fx="http://javafx.com/fxml/1"> 
    <TOP> 
     <HBox> 
      <Button text = "test"/> 
     </HBox> 
    </TOP> 
</BorderPane> 

Enfin, voici comment j'ai des choses énoncées en ce qui concerne les dossiers.

I can't post images yet so here's a link to one instead

Toute aide est grandement appréciée. Honnêtement, je n'ai pas été capable de comprendre pourquoi cela ne fonctionne pas même après avoir creusé pendant quelques heures ce soir. J'ai essayé d'autres solutions que j'ai trouvées ici et dans les recherches Google, mais rien n'a encore fonctionné. Si vous avez des questions n'hésitez pas à demander et je reviendrai à vous dès que possible le matin.

+0

Je suggère de prendre l'application dans ce tutoriel comme point de départ: http://code.makery.ch/library/javafx-8-tutorial/ –

+0

Cela semble super utile. Je vérifierai. Merci! – Parapraxis

Répondre

0

En premier lieu, votre deuxième importation manque un point entre contrôle et *, il devrait être import javafx.scene.control.*

En second lieu, TOP n'est pas un élément valable pour FXML, utilisez haut à la place (en minuscules) .

+0

Merci. Correction de ces problèmes la nuit dernière, mais il ne serait toujours pas charger. Redémarré ce matin et ça se charge très bien. Un peu bizarre mais je ne me plains pas. – Parapraxis