Ich benutze sbt 0.10 mit Scala 2.9.1.
Ich habe gelesen Ссылка
Aber ich will kein einziges riesiges Glas. Ich möchte nur Abhängigkeitsgläser endet im Verzeichnis target / scala-2.9.1.final / lib.
Der Grund, warum ich nicht ein einziges großes Glas will, verwendet dieses Projekt sehr libs, und normalerweise ändert sich nur die Anwendung .jar. Wie auch immer ist mehrsprachiges Projekt und nicht alle Teammitglieder haben scala oder sbt, Gläser sind nur zu git verpflichtet. Eine riesige hat sich regelmässig aktualisiert würde Repo Größe aufblasen.
Wie kann ich diese Abhängigkeiten kopieren? ;)
Sie haben die efeu-konfiguration nicht angegeben, um die konfigurationen zu kopieren, aber hier ist ein funktionierendes Beispiel, das alle Ihre verwalteten Abhängigkeiten in den target/<scala version>/lib
-Ordner kopiert (die scala-Version wird vom crossTarget angegeben) Aufgabe). Kopieren Sie das einfach und fügen Sie es in die Datei project/Build.scala
(oder den von Ihnen gewünschten Dateinamen) ein:
Wenn Sie eine bestimmte Konfiguration wünschen, ersetzen Sie
updateReport.allFiles
by updateReport.select(configuration = Set("compile"))
oder welche Ivy-Konfiguration Sie auch wollen.
Die verschiedenen "Classpath" -Schlüssel enthalten verschiedene Ansichten auf den Klassenpfad, aber wahrscheinlich ist es am einfachsten, das sbt-assembly-plugin so zu modifizieren, dass die jars einfach in ein Verzeichnis abgelegt werden, anstatt den unzip / rezip-Zyklus auszuführen. Das Plugin ist sehr klein (nur 150 Zeilen) und es ist ziemlich offensichtlich von einem flüchtigen Blick, was der richtige Ort ist, um zu ändern.