Rumah >Java >javaTutorial >Bagaimana untuk Membetulkan Ralat 'Digest fail tandatangan tidak sah untuk atribut utama Manifes' dalam Fail JAR Berlorek?
Ralat Fail Tandatangan Tidak Sah Semasa Melaksanakan .jar
Apabila menjalankan fail .jar yang mengandungi kebergantungan pada pustaka luaran (cth., bouncy castle ), pengguna mungkin menghadapi ralat berikut:
java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
Ralat ini selalunya menunjukkan isu dengan tandatangan digital balang.
Penyelesaian untuk Pengguna Maven-Shade-Plugin
Untuk pengguna yang mencipta uber-jar berlorek menggunakan maven-shade-plugin, penyelesaiannya terletak pada mengecualikan fail tandatangan manifes daripada proses teduhan. Tambahkan baris berikut pada konfigurasi pemalam:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <configuration> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> </excludes> </filter> </filters> <!-- Additional configuration. --> </configuration> </plugin>
Dengan mengecualikan fail ini, uber-jar berlorek tidak akan mengandungi maklumat tandatangan yang bercanggah, menyelesaikan ralat "Fail tandatangan tidak sah".
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat 'Digest fail tandatangan tidak sah untuk atribut utama Manifes' dalam Fail JAR Berlorek?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!