Ich benutze Maven, um meine Projekte zu definieren. Eine meiner Abhängigkeiten benötigt zur Laufzeit eine native DLL und wird daher in Tests und zum Debuggen benötigt. Die systemeigene DLL ist an einem bekannten Speicherort verfügbar. Ich möchte eine Lösung, die ich einmal einchecken kann und die für alle Entwickler ohne manuelles Setup von jedem Entwickler funktioniert.Wie kann ich den von Eclipse verwendeten java.library.path aus einem POM setzen?
Ich weiß, dass ich den java.libary.path manuell in "run configurations" einstellen kann, wodurch es die native DLL finden kann, aber dies erfordert eine manuelle Einrichtung für jeden Entwickler.
Ich weiß, ich kann auch die java.library.path für eine bestimmte Projektabhängigkeit festlegen, aber auch dies ist lokal für einen bestimmten Entwickler.
Endlich weiß ich, dass ich das surefire-Plugin festlegen kann, um den java.library.path anzugeben, aber das ist nur für Tests nützlich, die über maven ausgelöst werden - also ist es großartig für unseren Build-Server, aber nicht für Entwickler, die JUnit verwenden Runner in Eclipse, oder Debuggen oder Ausführen von Code direkt aus Eclipse.
Gibt es einen Ausweg?
Ich glaube nicht, dass es hilft. Ich habe bereits einige Eigenschaften in meinem POM. Das Problem ist, dass Eclipse oder der JUnit-Runner sich ihrer bewusst werden. Das Dokument, das Sie für 'set-system-properties' verknüpfen, besagt, dass" ein Maven 2.0-Projekt ausgeführt werden muss ". - Ich glaube nicht, dass dies geschieht, während der JUnit Runner gerade ausführt. – bacar