Rumah > Java > javaTutorial > Mengapa Fail JAR JavaFX Saya Membuang Ralat \'Lokasi Tidak Ditetapkan\' Semasa Memuatkan FXML?

Mengapa Fail JAR JavaFX Saya Membuang Ralat \'Lokasi Tidak Ditetapkan\' Semasa Memuatkan FXML?

DDD
Lepaskan: 2024-11-03 00:41:03
asal
251 orang telah melayarinya

Why Does My JavaFX JAR File Throw a

Ralat Lokasi Tidak Ditetapkan dalam JavaFX Semasa Mencipta JAR

Ralat "Lokasi tidak ditetapkan" sering timbul apabila mencipta fail JAR JavaFX projek. Ralat ini menunjukkan bahawa fail FXML tidak boleh dimuatkan dalam persekitaran JAR. Untuk menyelesaikan isu ini, pertimbangkan langkah berikut:

1. Tentukan Laluan Sumber:

Apabila memuatkan fail FXML, pastikan anda menentukan laluan yang betul ke sumber tersebut. Laluan itu mestilah pengecam Java yang sah, tanpa navigasi relatif (cth., ..). Cuba gunakan:

FXMLLoader loader = new FXMLLoader(getClass().getResource("/sm/customer/CustomerHome.fxml"));
Salin selepas log masuk

2. Gunakan Lokasi Pengawal:

Jika FXML dan fail pengawal anda terletak dalam pakej yang sama, anda boleh memuatkan FXML berbanding dengan pengawal:

FXMLLoader loader = new FXMLLoader(CustomerHomeCtrl.class.getResource("CustomerHome.fxml"));
Salin selepas log masuk

Pendekatan ini mengambil kesempatan daripada nama pakej pengawal dan mengurangkan keperluan untuk kemas kini laluan manual semasa pemfaktoran semula.

Pertimbangan Laluan Sumber:

  1. Sumber dikenal pasti melalui rentetan dengan subrentetan dipisahkan dengan garis miring (/).
  2. Setiap subrentetan mestilah pengecam Java yang sah.
  3. Nama sumber mengikut format shortName atau shortName.extension.
  4. Kedua-dua shortName dan sambungan mesti sah Pengecam Java.

Nota Tambahan:

  1. Pemuat kelas sistem fail boleh menyelesaikan laluan relatif secara berbeza daripada pemuat kelas JAR.
  2. Memanfaatkan lokasi pengawal untuk pemuatan FXML menggalakkan organisasi kod dan memudahkan pemfaktoran semula.

Atas ialah kandungan terperinci Mengapa Fail JAR JavaFX Saya Membuang Ralat \'Lokasi Tidak Ditetapkan\' Semasa Memuatkan FXML?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan