2. Februar 2008

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.

3 Kommentare zu “log4j und JMX-Maven-Dependencies”

  1. schwitzkroko

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

    com.sun.jmx
    jmxri

    und danke fuer den tip mit dem sun-repo…

  2. schwitzkroko

    es handelte sich um ein subtag namens exclusions, die kommentarfunktion hats beim posten gegestrippt; schau hier: http://docs.codehaus.org/display/MAVENUSER/Dependency+Mechanism

  3. rue

    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.

Einen Kommentar schreiben