Maven2: javax transaction jta missing – not really.
Java, Linux/OpenSource September 27th, 2007Nicht wirklich trifft es ausnahmsweise sehr gut. Wer sich bei einem Maven Projekt wundert, dass scheinbar in allen bekannten Maven2 Repositories Artefakte fehlen könnte auf die Idee kommen, einen Bugreport zu fehlenden Jar Files aufzumachen.
Leider ist die Fehlermeldung auch nicht gerade Anwenderfreundlich, hier am Beispiel von javax.transaction:jta:jar dargestellt:
[INFO] Failed to resolve artifact.Missing:
1) javax.transaction:jta:jar:1.0.1B
Try downloading the file manually from:
http://java.sun.com/products/jta
Gerade das manuelle Herunterladen von Artefakten soll einem Maven2 ja abnehmen – ein Blick in das Repository offenbart auch, dass dort alles für jta vorbereitet – lediglich das jar fehlt.
Das ist jedoch Absicht – denn die Sun Java Binary Lizenzen verbieten die Redistribution der Jar Files. Deswegen werden lediglich Meta-informationen im Maven Repository gehalten, die immerhin mitteilen wo man manuell die benötigten Dateien herunterladen kann. Leider mit der bereits erwähnten nicht gerade hilfreichen Fehlermeldung und einem fehlgeschlagenen Maven Build. Weitere Informationen dazu gibt diese Maven Webseite.
Abhilfe kann hier übrigens ein eigenes, privates Maven Repository schaffen, in das man z.B. JavaMail und Java Activation Jars einpflegt. Vor allem wenn man mehr als eine Workstation mit Maven betankt, automatische Builds auf Servern erledigen möchte oder Arbeitsgruppen versorgen möcht, lohnt der Aufwand ein eigenes Maven Repository aufzusetzen.
Mai 31st, 2008 at 15:59
The manual download is not necessary anymore. Sun has now maven repository. There is a page with instructions how to use it:
https://maven-repository.dev.java.net/
Mai 31st, 2008 at 16:45
Danke für den Tipp!