JavaFX“位置是必需的。” 即使在同一包裝中
將文件移動(dòng)到main / resources目錄有效。
就我而言,以上所有都不是問題。
我更換時(shí)解決了我的問題:
getClass().getResource('ui_layout.fxml')
與:
getClass().getClassLoader().getResource('ui_layout.fxml')解決方法
我正在嘗試運(yùn)行JavaFX程序,但遇到了一些困難。我不斷收到錯(cuò)誤消息“ java.lang.NullPointerException:必須提供位置”。fxml文件與Application類位于同一軟件包中。這是我非常簡(jiǎn)單的代碼:
package com.kromalights.designer.entry;import javafx.application.Application;import javafx.fxml.FXMLLoader;import javafx.scene.Parent;import javafx.scene.Scene;import javafx.stage.Stage;public class Main extends Application { @Override public void start(Stage primaryStage) throws Exception{Parent root = FXMLLoader.load(getClass().getResource("main.fxml"));primaryStage.setTitle("Kromalights Designer");primaryStage.setScene(new Scene(root,300,275));primaryStage.show(); } public static void main(String[] args) {launch(args); }}
這是我的main.fxml文件的副本:
<?xml version="1.0" encoding="UTF-8"?><?import java.lang.*?><?import javafx.scene.layout.*?><?import javafx.scene.layout.BorderPane?><?scenebuilder-stylesheet mailStyles.css?><?import java.net.*?><BorderPane prefHeight="300.0" prefWidth="300.0" xmlns:fx="http://javafx.com/fxml/1"xmlns="http://javafx.com/javafx/2.2"fx:controller="com.kromalights.designer.entry.Controller"> <bottom><Pane prefHeight="200.0" prefWidth="200.0"/> </bottom> <center><Pane prefHeight="200.0" prefWidth="200.0"/> </center> <left><VBox prefHeight="200.0" prefWidth="100.0"/> </left> <top><HBox prefHeight="100.0" prefWidth="200.0"/> </top> <stylesheets><URL value="@mainStyles.css" /> </stylesheets></BorderPane>
控制器類確實(shí)存在,并且位于fxml文件中指定的包中。我所有的名字都是正確的,也是我認(rèn)為應(yīng)該的位置。我想念什么?我確實(shí)嘗試重命名我的fxml文件,以防這是一個(gè)名稱問題。請(qǐng)幫忙。僅供參考,我在OSX上使用Intellij IDEA。
更新:這是一個(gè)Maven問題。我為此項(xiàng)目安裝了Maven,這引起了問題。我暫時(shí)刪除了Maven,因此沒有它我可以繼續(xù)工作。有沒有人對(duì)使用Maven時(shí)如何最好地解決這一問題有任何見解?
相關(guān)文章:
1. Docker for Mac 創(chuàng)建的dnsmasq容器連不上/不工作的問題2. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.3. css - 定位為absolute的父元素中的子元素 如何設(shè)置在父元素的下面?4. javascript - angualr2中emit觸發(fā)一個(gè)方法然后怎么獲得這個(gè)promise的結(jié)果5. java - 請(qǐng)問在main方法中寫成對(duì)象名.屬性()并賦值,與直接參參數(shù)賦值輸錯(cuò)誤是什么原因?6. mysql里的大表用mycat做水平拆分,是不是要先手動(dòng)分好,再配置mycat7. java - Spring boot 讀取 放在 jar 包外的,log4j 配置文件,系統(tǒng)有創(chuàng)建日志文件,不寫入日志信息。8. javascript - 圖片鏈接請(qǐng)求一直是pending狀態(tài),導(dǎo)致頁面崩潰,怎么解決?9. python - beautifulsoup獲取網(wǎng)頁內(nèi)容的問題10. 怎么用css截取字符?
