2015-03-31 35 views
6

Play projemizde bu sorunu yaşıyoruz. Derlemeden bir klasör nasıl hariç tutulur

bizim javascript testler

, bu skala kaynaklardan bir derleme tetikleyen.

Tüm javascripts testler test/assets altındadır ve bu yolun içine herhangi bir değişiklik kaynaklardan bir derleme algılanmaması gerekir.

Bu, bu klasör bir kaynak dizini olarak bir yere sevk anlamına gelir. Bu klasörün hangi sbt özelliğine sahip olduğunu anlamaya çalıştım ama bulamadım.

kimse derleme bu klasörün içinde bir dosya değiştiğinde tetikleme önlemek için bazı ipuçları verebilir misiniz?

+0

Çözüm değil, başka bir veri noktası, klasörü "donotcompile" olarak yeniden adlandırmak veya sorunun devam edip etmediğini görmek olabilir. Başka bir deyişle, "test" adı önemli mi değil mi? –

+0

sbt/activator konsolunda 'unmanagedSourceDirectory' veya' unmanagedResourceDirectory 'komutunu gösterirseniz, test dizini listelenir mi? Js testlerini yaparken sadece bu direnin değiştiğinden emin misin? BTW js testlerini yapmak için ne kullanıyorsunuz? – Salem

+0

Bu komutları çalıştırdığımda, test dizini gösterilmiyor. Bu yüzden neden bir derlemeye neden olduğunu bilmiyorum. Diğer sbt özelliklerini incelemeye çalıştım ve herhangi bir yerde test dizini için bir referans bulamadım. Hepsini kontrol etmedim, sadece açık olanları. Js testlerimiz grunt kullanılarak çalıştırılmaktadır. Tüm varlıklarımız grunt/gulp tarafından yönetilmez. – rmorais

cevap

0

watchSources görev değişikliği için izlenir dosyaları içeren görünüyor. Bu basit çözüm ise

>show watchSources 

Emin değilim, ama watchSources içinden test/assets kaldırır: Klasör listesini incelemek için/dosyaları sbt aşağıdaki yazın.

watchSources <<= watchSources.map{ 
    t => t.filterNot(x => x.getCanonicalPath.endsWith("test/assets")) 
} 
+0

Herkes sbt 1.0.x' için bir çözüm gördü mü? – adu

İlgili konular