Ich habe ein Maven-Repository eingerichtet, um einige dlls zu hosten, aber ich brauche meine Maven-Projekte, um verschiedene dlls herunterzuladen, abhängig davon, ob die verwendete JVM x86 oder x64 ist.
Zum Beispiel muss auf einem Computer, auf dem eine x86-Version der JVM ausgeführt wird, ABC.dll als Abhängigkeit vom Repository heruntergeladen werden, aber auf einem anderen Computer, auf dem eine x64-Version der JVM ausgeführt wird, muss XYZ heruntergeladen werden. dll stattdessen.
Wie würde ich das machen? Eine Beispieldatei pom.xml wäre nett.
Dies funktioniert auf jeder VM. Sie können Profile verwenden, um je nach Umgebung alternative Konfigurationen zu verwenden.
Ein Profil enthält einen Aktivierungsblock, der beschreibt, wann das Profil aktiviert werden soll, gefolgt von den üblichen pom-Elementen, z. B. Abhängigkeiten:
%Vor% Da Sie DLLs erwähnt haben, gehe ich davon aus, dass dies nur Windows ist. Vielleicht möchten Sie auch <family>Windows</family>
unter den <os>
-Tags hinzufügen.
EDIT: Wenn Sie eine 32-Bit-VM auf einem 64-Bit-Betriebssystem mischen, können Sie sehen, welchen Wert die VM der Systemeigenschaft os.arch
zuweist, indem Sie das Maven-Ziel
mvn help:evaluate
Und dann
eingeben ${os.arch}
Alternativ listet das Ziel help:system
alle Systemeigenschaften auf (in keiner bestimmten Reihenfolge).
Sie können dies mit Profilen tun. Dies funktioniert nur in Suns JVM.
%Vor%Tags und Links dependencies java jvm maven-2 pom.xml