Maison >Java >javaDidacticiel >Pourquoi mon code Java 1.4 ne parvient-il pas à se compiler en raison des restrictions d'accès à rt.jar ?
Restriction d'accès aux classes Java en raison de la dépendance à rt.jar
Lors de la tentative de compilation de code Java 1.4 avec des stubs obsolètes générés par WSDL2Java, les développeurs peuvent rencontrer une erreur de restriction d’accès. Cette erreur provient de l'inaccessibilité du type QName en raison d'une limitation sur la bibliothèque rt.jar. Bien que l'hypothèse soit que les stubs doivent être compilés avec les fichiers jar d'exécution disponibles, ce problème survient lorsqu'il existe des classes en double dans plusieurs fichiers jar.
Solution :
Pour résoudre ce problème , suivez ces étapes :
Cela donnera la priorité à la version correcte de la classe dans le fichier rt.jar, permettant l'accès au type QName.
Solution alternative :
Pour résoudre le problème sous-jacent, identifiez et excluez tous les fichiers jar contenant des classes en double. Cela garantit que la version correcte de la classe est chargée et utilisée par le compilateur. Dans l'exemple fourni, la classe en double est javax.xml.soap.SOAPPart trouvée dans plusieurs fichiers JAR. L'exclusion des fichiers axis-saaj-1.4.jar et saaj-api-1.3.jar permettra d'utiliser la version rt.jar, résolvant ainsi la restriction d'accès.
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!