Grundsätzlich muss mein Webdienst als einzelnes OSGi-Jarbündel bereitgestellt werden können. Deshalb:
Ich versuche das maven-bundle-plugin zu benutzen, um das zu erreichen. Ich habe Embed-Dependency verwendet, um alle Kompilierungs- und Laufzeitabhängigkeiten in das Bundle zu integrieren, und ich habe Embed-Transitive verwendet, um alle transitiven Abhängigkeiten einzubetten. Ich habe dann herausgefunden, wie man excludeDependencies verwendet, um Maven-Abhängigkeiten vom BND-Klassenpfad auszuschließen (sie werden im Manifest nach Private-Package verschoben), aber für das Leben von mir kann ich nicht herausfinden, wie man die transitiven Abhängigkeiten ausschließt . Egal, was ich mache, die transitiven Abhängigkeiten scheinen immer noch in der Import-Paket-Liste im Manifest zu erscheinen.
Schlimmer noch, es scheint ALLE Abhängigkeiten zu saugen, einschließlich der optionalen, so dass ich viele zusätzliche Sachen bekomme, die ich nicht verwende wie ibatis und jfree. Wenn ich dem Abhängigkeitsmuster jedoch optional = false hinzufüge, erhalte ich eine Warnung, dass keine Abhängigkeiten mit dem Muster übereinstimmen.
Ich habe angefangen, Abhängigkeiten einzeln auszuschließen, aber nach einer Stunde, in der ich die Abhängigkeiten verfolgt habe, habe ich beschlossen, dass es einen besseren Weg geben muss.
Dies ist die aktuelle Inkarnation meiner pom.xml. Kann mir jemand helfen, dies zu lösen?
%Vor%Tags und Links maven transitive-dependency osgi bundle