Apabila melaksanakan fail JAR dengan arahan "java -jar MyFile.jar", ia adalah penting untuk memahami keperluan laluan kelas. Pilihan "-jar" menandakan bahawa fail JAR mengandungi kelas utama yang akan dilaksanakan, manakala "-cp" digunakan untuk menentukan laluan kelas tambahan.
Dalam senario yang diberikan, ralat yang dihadapi mungkin disebabkan oleh gabungan pilihan "-jar" dan "-cp". Seperti yang dijelaskan oleh jawapan, pilihan ini adalah saling eksklusif. Menggunakan kedua-dua pilihan secara serentak menghasilkan perintah samar-samar yang tidak dapat ditafsirkan oleh Java.
Untuk menyelesaikan isu tersebut, pengguna mempunyai dua pilihan:
Pilihan 1: Gunakan Atribut Laluan Kelas Manifest:
Dalam pendekatan ini, manifes fail JAR termasuk atribut "Laluan Kelas", yang menentukan JAR yang diperlukan pada laluan kelas. Ini menghapuskan keperluan untuk pilihan "-cp".
Pilihan 2: Tentukan Laluan Kelas Penuh dengan "-cp":
Untuk pilihan ini, arahannya ialah "java -cp 'MyProgram.jar:libs/*' main.Main". Di sini, "-cp" menentukan laluan kelas penuh, termasuk JAR utama dan kebergantungannya, manakala penamaan eksplisit kelas "main.Main" memastikan ia berjalan sebagai titik masuk.
Sebagai alternatif, Semut boleh dimanfaatkan. Untuk "pendekatan nyata", "
Sebaliknya, untuk "pendekatan laluan kelas", laluan kelas penuh ditentukan menggunakan pilihan "-cp" bersama-sama dengan fail JAR dan penamaan eksplisit daripada kelas utama. Kaedah ini sesuai jika persekitaran sasaran tidak akan mengenali atribut "Class-Path" manifes.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Fail JAR dengan Pilihan Classpath Tambahan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!