Scala için en iyi yapım aracı hangisidir? Her birinin artıları ve eksileri nelerdir? Bir projede hangisini kullanacağımı nasıl belirleyebilirim?
Scala için en iyi yapım aracı hangisidir? Her birinin artıları ve eksileri nelerdir? Bir projede hangisini kullanacağımı nasıl belirleyebilirim?
Yanıtlar:
Maven'i Scala projelerini oluşturmak için kullanıyoruz çünkü CI sunucumuzla iyi entegre oluyor. Elbette bir yapı başlatmak için bir kabuk senaryosu çalıştırabiliriz, ancak Maven'den CI'ye girmek istediğimiz bir sürü başka bilgimiz var. Maven'i bir Scala projesi için kullanmayı düşünebilmemin tek nedeni bu.
Aksi takdirde, sadece SBT kullanın. Aynı bağımlılıklara erişirsiniz (gerçekten maven hakkında en iyi bölüm, IMHO). Ayrıca büyük olan artımlı derlemeyi elde edersiniz. Projenizin içinde bir mermi başlatma yeteneği de harika.
ScalaMock sadece SBT ile çalışır ve muhtemelen bir Java alay kütüphanesi yerine bunu kullanmak isteyeceksiniz. Bunun üzerine , derleme dosyasına tam scala kodu yazabildiğiniz için SBT'yi genişletmek çok daha kolaydır, bu nedenle bir Mojo yazmanın tüm zorluklarından geçmek zorunda kalmazsınız.
Kısacası, CI sunucunuzla gerçekten sıkı bir entegrasyona ihtiyacınız yoksa SBT'yi kullanın.
Soru sadece çok fazla fikir üretme tehlikesiyle karşı karşıya; gereksinimlerin net bir listesine veya ortamınızın açıklamasına, önceki bilgilere vb. sahip olmak daha iyi olur.
FWIW, bu scala posta listesi iş parçacığında daha fazla görüş var .
Benim 2c: Özel gereksinimleriniz yoksa sbt ile gidin
gen-idea
ve projeyi yeniden açın: güncellemeler yapıldı.compile
, test
, run
, doc
, publish-local
, console
) - console
en iyi özelliklerinden biridir.Bazı insanlar bağımlılık yönetimi için Ivy kullandığından sbt'den nefret ediyor (artılarını ve eksilerini yorumlayamıyorum, ancak çoğu zaman sorun değil), bazı insanlar sbt'den nefret ediyor çünkü yapı dosyasını XML yerine Scala DSL. Bazı insanlar sbt formatının v0.7'den v0.10'a değişmesinden hayal kırıklığına uğradılar, ancak açıkçası, sıfırdan başlarsanız göç sizi etkilemez.