2015-06-29 18 views
7

aşağıda gibi benim project.clj tekrarlanan bazı değerler vardır: Bu kütüphaneler örneğin 3.5.0 güncellenmelerini zaman, işte sabit çeşit kullanmak istiyorumLeiningen: project.clj'deki sabitler nasıl tanımlanır?

(defproject foo "0.1.0-SNAPSHOT" 
    ... 

    :dependencies [[bar "3.4.5"] 
       [baz "3.4.5"] 
       [bat "3.4.5"]] 

    ...) 

, sadece tek bir yerde değiştirmek zorunda.

Burada en iyi uygulama nedir? defproject tamamen ince ve genel bir uygulamadır önce bir tanım kullanmak

(def deps-version "3.4.5") 

(defproject foo "0.1.0-SNAPSHOT" 
    ... 

    :dependencies [[bar ~deps-version] 
       [baz ~deps-version] 
       [bat ~deps-version]] 

    ...) 
+0

Bir cevap ekledim ama sabitleri işe alamadığınızı düşündüm, bu durum böyle mi? Örneğinizdeki '~' char'ını, yani [bar ~ deps-version] 'eksik. Kendi çözümünüz, leiningen dışında (selenyum sürücü sürümleri için) kullandığım bir şeydir, bu yüzden yapılacak tek bir değişiklik var ve yeterince iyi uyuyor. –

+0

Teşekkürler @MarkFisher, kodu düzelttim. – muhuk

+1

Şimdi sorunuzun özü nedir şimdi? eğer sadece "bunun gibi sürümleri kullanmalı mıyım?" o zaman cevaplar muhtemelen basitçe evet. –

cevap

1

: Ben kadar gelebilir İyi budur.

Ayrıca, yapı ortamına bağlı olarak daha gelişmiş şeyler de yapabilirsiniz (bu durumda da etkili proje sürümünü etiketlerdim). Bu soruya verilen yanıtlarda güzel bir örnek "Leiningen: How to define constants in project.clj?"

+0

Bağlantı, aynı sayfaya yönlendiriyor. Yinelemeyi anlamak için, özyineyi anlamak gerekir ... –