Schlagwort-Archive: Maven

log4j und JMX-Maven-Dependencies

Ohne besonderen Grund und wie sich schnell herausstellte auch eher unbedarft änderte ich gerade in meiner pom.xml die verwendete log4j-Version von 1.2.14 auf 1.2.15. Keine große Sache sollte man meinen, doch bei der Aktualisierung des Projektes fielen mir dann schon die Fehlermeldungen auf:

[WARNING] An error occurred during dependency resolution.
Failed to retrieve com.sun.jmx:jmxri-1.2.1
Caused by: Unable to download the artifact from any repository

Try downloading the file manually from the project website.

Eclipse monierte dann auch prompt einen fehlerhaften Build Path. Offenbar hatten sich da einige Abhängigkeiten geändert. Warum das so ist, ist mir nicht klar – im Changelog findet sich da nichts erhellendes. JMX-Unterstützung scheint es schon länger zu geben.

Ärgerlich ist halt, dass diese Abhängigkeit in keinem meiner vier Repositories gefunden wurde. Und Bibliotheken manuell in seine lokale Sammlung aufzunehmen ist sehr nervig, vor allem wenn man eigentlich gar nicht weiß, wozu das ganze. Ist mir aber mit Sun-Bibliotheken schon öfter passiert.

Auf der Suche nach einer besseren Lösung lud ich mir erst mal log4j direkt herunter, und analysierte dessen pom.xml. Daraus wurde ersichtlich, dass es ein Maven Repository auf java.net gibt, was mir bisher nicht bekannt war. Da finden sich zwar nicht die vermissten JMX-Bibliotheken, aber offenbar alle sonstigen Sun-Bibliotheken, die in den Open-Source-Repositories immer fehlen. Tollerweise funktioniert nicht mal ein mvn install mit dem heruntergeladenem log4j tarball.

Einziger Ausweg für mich aus dieser JAR-Hölle: wieder zurück zu 1.2.14. Ich werde nichts vermissen, außer der Zeit, die mir diese eigentlich kleine Änderung gestohlen hat.