SBT Summary

Merhaba arkadaslar,

Bu yazımızda SBT build tools’a biraz deginmeyece çalışacağız, özet niteliğindedir.

SBT (Simple Build Tool)

Scala’da yazılmıs esnek ve güçlü bir project build tool’dur. Maven, Gradle gibi yapılara alışık iseniz çok zorlamanmayacaksınız ancak tam olarak da benzemez. Scala ile yazılmasına ragmen Java ile hatta cross-platform olarak da kullanılabilir. Dependency yönetimini ivy ile sağlamaktadır.

Detaylı bilgilere http://www.scala-sbt.org/ adresinden erişebilirsiniz.

Linux ortamında kurulum yapmak için aşağıdaki komutları çalıştırın;

SBT’yi artık kullanabilir duruma gelecektir makina.

Bir örnek yapalım;

Bir dizin olusturalım ve selam veren ufak bir scala dosyası olusturalım;

Dizinimizde scala objemizi olusturduktan sonra sbt çağrısı ile uygulamamızı çalıştırmaya hazır hale getiriyoruz. SBT bizden komut bekliyor, run dedigimizde çıktıyı görebiliriz.

Screenshot from 2016-03-17 14:31:40

SBT proje içerisinde otomatik olarak bazı şeyleri arar;

  • Base directory de scala yada java dosyalarını,
  • Source code icin : /src/main/*.scala yada yada /src/main/*.java
  • Test code icin : /src/test/*.scala yada yada /src/test/*.java
  • Diğer kaynak dosyaları icin de /src/main/resources ve /src/test/resources
  • Kütüphaneler için de /lib klasörünü arayacaktır.

Not : sbt help yazarak komut satırı opsiyonlarını görüntüleyebilirsiniz.

Proje dizin hiherarşisi maven ile benzerdir;

Not : src dizini altındaki diğer klasöler göz ardı edilebilir sbt tarafından!

Compile edilen java/scala vb gibi dosyalar target dizininde yer alacaktır. Hello.scala dosyamızın compile edilmis halini görebilirsiniz.

Screenshot from 2016-03-17 14:55:50

Önceki yazılarımıda kullandıgımız proje de yer alan build.sbt dosyamızın içeriğine bakalım;

Screenshot from 2016-03-17 14:59:02

Proje adı, proje version ve debendency kısımlarını play’e özel görebilirsiniz.

Play projemizdeki plugin.sbt’ye bakalım;

Screenshot from 2016-03-17 15:09:27

plugin eklemek için addSbtPlugin, var olan pluginleri enabled/disabled etmek icin de enabledPlugins/disabledPlugins komutlarını kullanabilirsiniz.

SBT ile pluginleri görüntüleyelim;

Screenshot from 2016-03-17 15:20:30

SBT’de 3 tane default plugin enabled olarak gelmektedir. Bunlar; CorePlugin, IvyPlugin ve JvmPlugin’dir. Plugins listesine şuradan ulasabilirsiniz : http://www.scala-sbt.org/0.13/docs/Community-Plugins.html

SBT ile task tanımı yapabilir, çalıştırabilirsiniz. Task, plugins, scope, documentation olusturma vs gibi bir çok konu/özellik vs var. Fırsat buldukca kurcalamak lazım.

Yazıyı burada sonlandırıyorum arkadaslar, sağlıcakla kalın.

~ A.Akkus

613 Total Views 1 Views Today