Jadual Kandungan
Merujuk Fail FXML daripada Projek Maven
Pencarian Sumber Generik dalam Java/JavaFX
Contoh Penggunaan
Lokasi Pilihan Resolusi
Penggunaan FXMLLoader Pengesyoran
Tetapan IDE dan Binaan
Aplikasi Modular Jigsaw Java
Rumah Java javaTutorial Bagaimana untuk Mencari Fail FXML dalam Projek Maven?

Bagaimana untuk Mencari Fail FXML dalam Projek Maven?

Nov 18, 2024 pm 09:03 PM

How to Locate FXML Files in Maven Projects?

Merujuk Fail FXML daripada Projek Maven

Dalam aplikasi JavaFX anda, anda bertujuan untuk memuatkan fail FXML daripada folder sumber menggunakan kod seperti:

FXMLLoader.load(getClass().getResource("main.fxml"));
Salin selepas log masuk

Semasa folder sumber anda berada dalam laluan binaan, anda menghadapi ralat. Untuk menyelesaikan masalah ini, mari kita terokai pilihan untuk mencari fail FXML.

Pencarian Sumber Generik dalam Java/JavaFX

Ingat bahawa carian lokasi fail FXML ialah subset carian sumber generik di Java. Fail sumber (termasuk fail FXML) ditentukan secara relatif kepada laluan kelas anda. Untuk panduan komprehensif, rujuk:

  • JavaFX Resource Lookup: https://javafx-docs.github.io/javafx-docs/javafx/2.2/resources/resource_lookup.htm
  • Panduan Eden: https://edencoding.com/javafx-resource-files

Contoh Penggunaan

Coretan kod berikut menunjukkan pemuatan fail FXML:

FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("/main.fxml"));
Parent content = loader.load();
Salin selepas log masuk

Lokasi Pilihan Resolusi

Terdapat beberapa pilihan untuk menentukan lokasi fail FXML dalam folder sumber anda:

1. Letakkan semua fail FXML dalam src/main/resources:

loader.setLocation(getClass().getResource("/main.fxml"));
Salin selepas log masuk

2. Letakkan fail FXML dalam src/main/resources/fxml:

loader.setLocation(getClass().getResource("/fxml/main.fxml"));
Salin selepas log masuk

3. Letakkan fail FXML dalam direktori sumber yang sepadan:

Dengan mengandaikan kelas anda memuatkan FXML berada dalam src/main/java/com/mycompany/myapp, anda boleh meletakkan fail FXML dalam:

src/main/resources/com/mycompany/myapp/main.fxml
Salin selepas log masuk

Dan muatkannya menggunakan:

loader.setLocation(getClass().getResource("main.fxml"));
Salin selepas log masuk

Penggunaan FXMLLoader Pengesyoran

  • Segerakan FXMLLoader melalui FXMLLoader(), bukan kaedah statik.
  • Tetapkan lokasi pada FXMLLoader yang disegerakan dan beban panggilan(), bukannya memuatkan daripada strim.
  • Gunakan getClass().getResource() untuk memperoleh berasaskan URL lokasi.

Tetapan IDE dan Binaan

Pastikan IDE atau alat binaan anda menyalin fail FXML daripada direktori sumber ke direktori output binaan. Rujuk panduan tetapan Intellij untuk mengurus ini: https://stackoverflow.com/questions/25232751/how-to-convert-a-normal-java-project-in-intellij-into-a-javafx-project.

Aplikasi Modular Jigsaw Java

Dalam aplikasi Java Jigsaw, dapatkan sumber terus daripada kelas, bukan kelas pemuat.

// Avoid:
ComboBoxStyling.class.getClassLoader().getResource("/css/styleclass.css");

// Use:
ComboBoxStyling.class.getResource("/css/styleclass.css");
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Mencari Fail FXML dalam Projek Maven?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Rangka Kerja 4 JavaScript teratas pada tahun 2025: React, Angular, Vue, Svelte Rangka Kerja 4 JavaScript teratas pada tahun 2025: React, Angular, Vue, Svelte Mar 07, 2025 pm 06:09 PM

Rangka Kerja 4 JavaScript teratas pada tahun 2025: React, Angular, Vue, Svelte

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka? Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka? Mar 17, 2025 pm 05:35 PM

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?

Node.js 20: Peningkatan Prestasi Utama dan Ciri -ciri Baru Node.js 20: Peningkatan Prestasi Utama dan Ciri -ciri Baru Mar 07, 2025 pm 06:12 PM

Node.js 20: Peningkatan Prestasi Utama dan Ciri -ciri Baru

Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan? Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan? Mar 17, 2025 pm 05:46 PM

Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?

Iceberg: Masa Depan Jadual Data Tasik Iceberg: Masa Depan Jadual Data Tasik Mar 07, 2025 pm 06:31 PM

Iceberg: Masa Depan Jadual Data Tasik

Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu? Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu? Mar 17, 2025 pm 05:44 PM

Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?

Spring Boot Snakeyaml 2.0 CVE-2022-1471 Isu Tetap Spring Boot Snakeyaml 2.0 CVE-2022-1471 Isu Tetap Mar 07, 2025 pm 05:52 PM

Spring Boot Snakeyaml 2.0 CVE-2022-1471 Isu Tetap

Cara berkongsi data antara langkah -langkah dalam timun Cara berkongsi data antara langkah -langkah dalam timun Mar 07, 2025 pm 05:55 PM

Cara berkongsi data antara langkah -langkah dalam timun

See all articles