Java-Security-Klasse nicht gefunden werden Konnte
Beim Start meines Programms die nächste Fehlermeldung erscheint aus
java.lang.NoClassDefFoundError: could not initialize class javax.crypto.SunJCE_b
was bedeutet, dass diese Klasse fehlt, obwohl ich gefunden habe, die diese Klasse manuell, funktioniert über jar/ide aber nicht funktioniert prefectly über service.
Vielleicht muss ich ein paar änderungen? - aber welchen?
Vielen Dank im Voraus
Hast du jemals eine Lösung für dieses problem?
In meinem Fall (Tomcat 6 + Java 1.6 auf Ubuntu 14.04) war mein problem gelöst, indem die JCE unlimited strength crypto jars (wie @Thedaego beantwortet) und dann einen Neustart von Tomcat.
In meinem Fall (Tomcat 6 + Java 1.6 auf Ubuntu 14.04) war mein problem gelöst, indem die JCE unlimited strength crypto jars (wie @Thedaego beantwortet) und dann einen Neustart von Tomcat.
InformationsquelleAutor Swine1973 | 2011-05-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß nicht, ob das relevant ist Ihre problem, aber ich erlebte das exakt gleiche Verhalten aufgrund Versionen des JCE-Richtliniendateien ich war mit.
Mit der richtigen Unlimited Strength Cryptography Durchwahlnummern löste dieses Problem für mich. Ich glaube, dass ich möglicherweise versehentlich installiert die Erweiterungen für Java 7 im Gegensatz zu 6. (Ich war mit Java 6 für die Zusammenstellung)
Für eine windows-Maschine, Sie sollten installiert werden, in das jre/lib/security Verzeichnis Ihrer JDK installiert ist, zum Beispiel: c:\program Dateien\Java\jdk1.6.0_33\jre\lib\security
InformationsquelleAutor Thedaego
Die Klasse sollte sich in der
jce.jar
- Datei. Diese muss auf dem Klassenpfad. Überprüfen Sie Ihre classpath-Parameter sollte entweder die-cp
parameter, wenn Sie die Anwendung starten ohne die-jar
option xor derClass-Path
Eintritt in die Gläser manifestieren, wenn Siejava -jar myapp.jar
starten Sie das ProgrammSie fand eine gemeinsame WTF 😉 - das ist eine weitgehend unbekannte Regel: wenn Sie starten Sie die app mit der
-jar
option, dann die-cp
option und dieCLASSPATH
Umwelt werden ignoriert. Dann der Klassenpfad muss angegeben im Manifest nur.Schnelle Abhilfe - vorausgesetzt, Sie "main-Klasse" genannt
com.example.App
, dann starten Sie die Anwendung wie diese:InformationsquelleAutor Andreas_D
Hatten wir die Berechtigungen unseres Dateien nur gelesen werden, nur von root und gab uns einen ähnlichen Fehler.
Berechtigungen ändern und alles funktioniert!
InformationsquelleAutor melinda
Überprüfen, welche jre verwendet wird, wenn Sie Start und stellen Sie sicher, dass die jre/lib/ext Ordner enthält sunjce_provider.jar
InformationsquelleAutor user738252
Stellen Sie sicher, dass Sie nicht mit den extensions directory option. In der Vergangenheit, wenn ich die extensions directory-option anstelle der classpath war nicht mehr in der Lage, laden Sie die Security-Bibliotheken und-Politik. Wenn ging ich zurück zu einer expliziten classpath der Security-Funktionalität wieder arbeiten.
InformationsquelleAutor gshauger
Ich gelöscht, viele ältere JDKs in /Library/Java VirtualMachine (habe osx) und nach einem Neustart von android studio war der Fehler Weg, aber ich hat um die jdk wieder. Vielleicht hilft es anderen.
InformationsquelleAutor Martin Pfeffer
Dies ist Problem mit dem JRE-version, es sollte zeigen Sie auf der gleichen jre-version als die vom Programm benutzt werden, sieht es für den "jre/lib/security" sollte unter den gleichen jdk von Ihrem Programm
InformationsquelleAutor Fairoz