2015-03-13 3 views
0

Я изучаю JavaFX приложений и кажется, что файл ресурсов fxml не найден. Я бегу Intellij Idea IDE 14, моя project структура:IDEA - невозможно загрузить ресурс java

enter image description here

файл ContactViews.fxml расположен по адресу: src/fr/hznteam/contacts/view/

в настройках/компилятора/шаблонов ресурсов:!? .java;!? .form;!? .class;!? .groovy;!? .scala;!? .flex;!? .kt;!? !?. .clj; * FXML

При выполнении этого кода:

public class ContactBoard extends Application { 

    public static void main(String[] args) { 
     launch(args); 
    } 

    @Override 
    public void start(Stage primaryStage) { 

     Parent root; 

     try {; 
      root = FXMLLoader.load(getClass().getResource("/fr/hznteam/contacts/view/ContactsView.fxml")); 
     } catch (IOException e) { 
      e.printStackTrace(); 
      return; 
     } 

     Scene scene = new Scene(root); 
     primaryStage.setScene(scene); 
     primaryStage.sizeToScene(); 
     primaryStage.show(); 
    } 


} 

сталкиваюсь следующее сообщение об ошибке:

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:403) 
    at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:47) 
    at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:115) 
    at java.lang.Thread.run(Thread.java:745) 
Caused by: java.lang.NullPointerException: Location is required. 
    at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2825) 
    at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2809) 
    at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2795) 
    at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2782) 
    at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2771) 
    at fr.hznteam.contacts.view.ContactBoard.start(ContactBoard.java:28) 
    at com.sun.javafx.application.LauncherImpl$5.run(LauncherImpl.java:319) 
    at com.sun.javafx.application.PlatformImpl$5.run(PlatformImpl.java:219) 
    at com.sun.javafx.application.PlatformImpl$4$1.run(PlatformImpl.java:182) 
    at com.sun.javafx.application.PlatformImpl$4$1.run(PlatformImpl.java:179) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at com.sun.javafx.application.PlatformImpl$4.run(PlatformImpl.java:179) 
    at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:76) 
    at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method) 
    at com.sun.glass.ui.gtk.GtkApplication$3$1.run(GtkApplication.java:89) 

Line 28 : root = FXMLLoader.load(getClass().getResource(..... 

Похоже, что ресурс не найден.

Может ли кто-нибудь мне помочь?

ответ

2

Попытка добавления / перед дорогой. Он загружает ресурс из пакета fr.hznteam.contacts.view

root = FXMLLoader.load(getClass().getResource("/fr/hznteam/contacts/view/ContactsView.fxml")); 
+0

Да жаль, shuld быть корень = FXMLLoader.load (GetClass() getClassLoader() getResource ("пт/hznteam/контакты/просмотр/ContactsView.fxml")..); или root = FXMLLoader.load (getClass(). GetResource ("/ fr/hznteam/contacts/view/ContactsView.fxml")); но он не работает –

+0

Проверьте наличие орфографических ошибок или пробелов в конце, иначе отдых будет прекрасным. – ItachiUchiha

Смежные вопросы