2011-12-19 14 views

cevap

18

şey yapmalı: iki kat-yuvalanmış project dizinleri gerekli olduğunu o

import sbt._ 
object PluginDef extends Build { 
    lazy val projects = Seq(root) 
    lazy val root = Project("plugins", file(".")) dependsOn(shPlugin) 
    lazy val shPlugin = uri("file:///tmp/sbt-sh") 
} 

Not. Bunu bir .sbt dosyasından yapmanın herhangi bir yolunun farkında değilim (bir yolu olabilir, ama ne olduğunu bilmiyorum).

Bu, here belgelenmiştir (bkz. "1d) Proje bağımlılığı").

+2

Teşekkürler bunu gördüm ama sadece bir dosya: // url kullanabileceğinizi görmedim.Aşağıdaki gibi daha basit bir yol olmalı, addLocalSbtPlugin ("/ tmp/sbtsh ") –

+2

Bu da işe yarayabilir (denemedim): lazy val shPlugin = dosya ("/tmp/sbt-sh ") –

+2

Ayrıca, yanlış koyarsanız hata iletisi dosya adı biraz yanıltıcı: Geçersiz yapı URI'sı (hiçbir işleyici mevcut değil): dosya: /// tmp/sbt-shX/(burada sbt-shX yok) –

10

0.13'te, a) bunu yapmanın basit bir yolu ve b) daha iyi belgeler. @ PaulButcher cevabı şimdi Düzenlemek söyler section 1d of the sbt documentation for plugins, işaret proje/plugins.sbt: uri (... bir dosyaya ("/ tmp/sbt-k" ile değiştirilebilir

lazy val root = project.in(file(".")).dependsOn(assemblyPlugin) 
lazy val assemblyPlugin = uri("git://github.com/sbt/sbt-assembly#0.9.1") 

Ve tabii ki

İlgili konular