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.

4 Gedanken zu „log4j und JMX-Maven-Dependencies“

  1. pack das hier unterhalb des log4j-dependency-knotens rein:

    com.sun.jmx
    jmxri

    und danke fuer den tip mit dem sun-repo…

  2. Vielen Dank für den Hinweis mit den exclusions, das werde ich bald mal ausprobieren.

    Trotzdem irgendwie lästig, dass man da so einen Workaround benötigt.

Kommentare sind geschlossen.