Našli jsme na to free knihovnu i se zdroji, která potřebuje BouncyCastle knihovnu bcpkix-jdk15on.jar
(verze je důležitá!) . Knihovna je uvedena v mavením pom.xml. Potud vše ok.
Problém začíná na tomto kódu
- Kód: Vybrat vše
private final AlgorithmNameFinder algorithmNameFinder = new DefaultAlgorithmNameFinder();
Class DefaultAlgorithmNameFinder je v bcpkix-jdk15on.jar, ale stejně je vyhozena výjimka
Could not initialize class org.bouncycastle.operator.DefaultAlgorithmNameFinder NoClassDefFoundError
Vylistoval jsem si všechy knihovny z aplikace a vidím, že tam jsou i starší BouncyCastle knihovny:
bcmail-jdk14.jar, bcprov-jdk14.jar and bctsp-jdk14.jar. Žádná z nich není uvedena jako dependency
v pom.xml a žádná z nich neobsahuje DefaultAlgorithmNameFinder class.
Ale tyto knihovny si pravděpodobně dynamicky dotahuje knihovna Jasper.
bcpkix-jdk15on.jar je ale v pom.xml dependencies daleko před Jasperem.
Narozumím tomu, proč class loader hledá class jen v '14' knihovnách a potom ne už v '15' ?
Máte někdo vysvětlení, případně řešení ?
Díky.