首頁 > Java > java教程 > 主體

使用 JARS 打包 JavaFX 應用程式時如何修復「位置未設定」錯誤?

DDD
發布: 2024-11-03 07:11:30
原創
873 人瀏覽過

How to Fix the

JAVAFX:使用JAR 打包時處理「位置未設定」錯誤

您的程式碼在Eclipse 中運行順利,但是當打包為JAR 並透過cmd 執行,遇到「位置未設定」錯誤。出現此問題的原因是 getClass().getResource(...) 方法需要資源,而不是直接檔案路徑。

在 Java 中,資源是使用由斜線分隔的有效 Java 識別碼的層次結構來定義的(/ ) 和資源名稱 (shortname.extension)。從檔案系統載入類別時,這相當於檔案路徑。但是,在使用其他類別載入機制時,遵守這些規範至關重要。

解決錯誤

要修正該問題,請將目前程式碼替換為以下程式碼:

FXMLLoader loader = new FXMLLoader(getClass().getResource("/sm/customer/CustomerHome.fxml"));
登入後複製

替代方法:控制器Location

由於您的FXML 和控制器檔案位於同一個套件中,因此您可以利用控制器位置來載入FXML:

FXMLLoader loader = new FXMLLoader(CustomerHomeCtrl.class.getResource("CustomerHome.fxml"));
登入後複製

此方法更加健壯並簡化了未來的重構,因為編譯器會自動驗證套件名稱。此外,對套件結構的任何更改都可以由 Eclipse 無縫處理。

以上是使用 JARS 打包 JavaFX 應用程式時如何修復「位置未設定」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板