Lors de l'exécution d'un fichier JAR qui utilise une bibliothèque externe, telle qu'un château gonflable, vous pouvez rencontrer le problème suivant erreur :
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
Pour résoudre ce problème, il est nécessaire de comprendre la cause première. Cette erreur se produit généralement lorsque le fichier JAR contient des fichiers de signature non valides ou non reconnus par la machine virtuelle Java (JVM).
Solution pour les utilisateurs de Maven-Shade-Plugin
Pour ceux qui tentent de créer un uber-JAR ombré à l'aide du plugin maven-shade-plugin, la solution consiste à exclure des fichiers de signature spécifiques du processus d'empaquetage. Vous pouvez y parvenir en ajoutant les lignes suivantes à la configuration de votre plugin dans le fichier POM.xml :
<filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> </excludes> </filter> </filters>
En excluant ces fichiers de signature spécifiques, vous autorisez la JVM à les ignorer lors de la vérification, résolvant ainsi le problème invalide. erreur de signature.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!