Eines meiner Projekte wird ein jar-Paket bereitstellen, das für Unit-Tests in mehreren anderen Projekten verwendet werden soll. Bisher habe ich es geschafft, eine objects-commons_2.10-0.1-SNAPSHOT-test.jar
sbt zu produzieren und sie in meinem Repository veröffentlichen zu lassen.Wie löse ich meine eigenen Testartefakte in SBT auf?
Allerdings kann ich keine Möglichkeit finden, sbt zu sagen, dieses Artefakt mit dem Testbereich in anderen Projekten zu verwenden.
Durch das Hinzufügen der folgenden Abhängigkeiten in meinem build.scala wird das Testartefakt nicht geladen.
"com.company" %% "objects-commons" % "0.1-SNAPSHOT",
"com.company" %% "objects-commons" % "0.1-SNAPSHOT-test" % "test",
Was ich brauche, ist die Standard-.jar-Datei als Kompilierung und Laufzeitabhängigkeit und die -test.jar als Abhängigkeit in meinem Testumfang zu verwenden. Aber irgendwie versucht sbt nie, das Testglas aufzulösen.
Dieser Ansatz kann transitive Abhängigkeiten des Test-Jar möglicherweise nicht auflösen.So ist es besser, die [offiziell empfohlene Methode, von der Dokumentation] zu verwenden (http://stackoverflow.com/a/8194192/495796), nachdem er die 'publishArtifact' Zeilen hinzufügen. Wenn es immer noch nicht funktioniert, sollte der Wechsel von Maven-Style zu Ivy-Style-Publishing (mit Ivy-Style-Repositories) funktionieren. –