Ich versuche, Ivy zusätzliche Attribute mit SBT zu verwenden. Ich habe zwei Module: foo-model und foo-api. Für beide habe ich das zu build.sbt
hinzugefügt:
Foo-Modell wird in Artifactory (mit sbt publish) veröffentlicht. Die veröffentlichte POM-Datei sieht folgendermaßen aus:
%Vor%Dann brauche ich foo-api, um foo-model zu verwenden, also habe ich das zu seiner build.sbt hinzugefügt:
%Vor%Wenn ich jedoch versuche, SBT (entweder Update oder Paket) auszuführen, bekomme ich Folgendes:
%Vor%Und es gibt eine Ausnahme und einen Fehler. Ich versuchte mit SBT 0.13.0 und 0.13.1.
Ich habe es nicht geschafft, eine nützlichere Debug-Ausgabe zu erhalten. Ich bekomme das erst ab dem letzten Befehl:
%Vor%Die POM-Datei unter der obigen URL existiert wirklich und ihr Inhalt ist oben zitiert, d. es hat die Verzweigungseigenschaft mit dem Wert master-api-model-separation.
Was mache ich falsch?
Das Ivy-Extra-Attribut erfordert möglicherweise ein Ivy-Repository, damit es funktioniert. Das sollte funktionieren, wenn Sie Artifactory verwenden. sbt verwendet intern zusätzliche Attribute, um die Scala-Version im Maven-Repository zu verschlüsseln, aber ich weiß nicht, ob diese Bits verfügbar sind.
Hier ist, was ich als Test verwendet habe.
Die Hälfte der Einstellungen ist im Wesentlichen so eingerichtet, dass sie zum Testen in ein Dummy-Bintray-Repository veröffentlicht wird. Hier sind einige der Hinweise:
branch
ist bereits vergeben, also glaube ich nicht, dass Sie ihn benutzen können. Ich bin sugin branch_name
. Mit app
konnte ich die JAR von Bintray auflösen:
Zukünftige Verbesserungen: Hier ist mein Versuch, dies mit einem Maven Repo - Ссылка
zu tunTags und Links sbt