2013-07-30 18 views
11

http://www.scala-sbt.org/0.12.2/docs/Getting-Started/Library-Dependencies.htmlSBT kapsam kütüphanesi bağımlılıklarına özel sözdizimi?

Eğer bir bağımlılık, sadece test yapılandırması için değil Derleme yapılandırma sınıf yolunda göstermek böyle% "testi" eklemek istiyorsanız:

libraryDependencies += "org.apache.derby" % "derby" % "10.4.1.3" % "test" 

Birisi bu notasyonu neden kullandığımızı açıklayabilir mi? Sonunda konfigürasyonu mu kastediyorum?

libraryDependencies in Test += "org.apache.derby" % "derby" % "10.4.1.3" 

cevap

4

ucunda bir dize olarak konfigürasyonu Ivy configuration ve daha doğru bir yapılandırma haritalama olarak tanımlanır:

Neden böyle bir şey yazmayın. in Test, tüm kullanım örneklerini kapsamaz, ancak yaygın olanları kapsamaz.

0.13 için Detailed-Topics/Dependency-Management sayfalık bununla ilgili daha fazla bilgiye sahiptir. Yapılandırmalar bir Ivy özelliğidir. Maven'in kapsamlarının bir genellemesi olarak düşünülebilir.

Maven kapsamlarının ötesinde bir ivy.xml biçiminde meta veriler gerektirdiğini unutmayın. Bu, yayınevi-yerel, bir yayın havuzuna yayınlanmış yerel bir yayın için meta veri için veya yayınlanmadan önce yerel bir yapı içinde kullanıldığında geçerlidir. Maven Central'dan gelen bir pom.xml biçimindeki meta veriler, standart Maven kapsamları ile sınırlıdır.

+0

Teşekkürler şimdi anlıyorum. Maven ile yapmak imkansız değil mi? Çünkü maven yerel yayınlanmış eserleri kullanır ve sadece src/main/yayınlanır. 'test-> test' bazı durumlarda Maile ve kapsamları ile ilgili ayrıntılar ile düzenlenmiş –

+0

için yararlı olabilir –