SORU
15 ŞUBAT 2010, PAZARTESİ


Nasıl bir Gradle komut alabilir miyim?

Ve ortamlar bir dizi Eclipse projeleri oluşturma ve dağıtma etrafında işlevsellik bir yük tamamladı karmaşık gradle bir senaryo var.

Script çok iyi çalışıyor, ama özünde tüm yarım düzine haritalar tutan bir proje ve çevre bilgileri ile yapılandırılmıştır.

Sadece basit bir yapı dosyasında haritalarım tanımlamak böylece görevleri başka bir dosya içine uzak soyut, ve diğer dosya görev almak istiyorum. Bu şekilde, çeşitli projeler için aynı temel görevleri kullanmak ve haritalar basit bir dizi ile bu projeleri yapılandırabilirsiniz.

Herkes Karınca görev için benzer bir şekilde başka bir gradle dosyasını al, bana ne söyleyebilir? Boşuna Gradle bu belgeler şimdiye kadar trawled ettim.

Ek Bilgi

Tom'un cevabı aşağıda sonra, deneyin ve ne demek istediğimi açıklamak istedim.

Temelde bir sayıdaki alt çalıştığı gradle bir senaryo var. Ancak, tüm projeleri Eclipse projeleri ve komut dosyaları oluşturmak, gradle görevleri var ve bu yüzden kendi karınca ile bunların her dediği.

Benim sorunum dosya gibi üst kısmında bazı yapılandırma var

projects = [
    [name:"MySubproject1", shortname: "sub1", env:"mainEnv", cvs_module="mod1"],
    [name:"MySubproject2", shortname: "sub2", env:"altEnv", cvs_module="mod2"]
]

Ben o zaman görevler gibi oluşturun

projects.each({
    task "checkout_$it.shortname" << {
         // Code to for example check module out from cvs using config from 'it'.
    }
})

Görev oluşturulması parçacıkları bu tür çok var, ve hepsi genel - onlar tamamen projeler listesinde config bağlıdır.

O zaman benim ne istediğim ayrı bir script koy ve aşağıdaki sıralama almak için bir yoldur:

projects = [
    [name:"MySubproject1", shortname: "sub1", env:"mainEnv", cvs_module="mod1"],
    [name:"MySubproject2", shortname: "sub2", env:"altEnv", cvs_module="mod2"]
]

import("tasks.gradle") // This will import and run the script so that all tasks are generated for the projects given above.

Bu örnekte, işleri.gradle tüm genel görev oluşturma kodu var ve bu projeler ana yapı olarak tanımlanan hareket alırlar.dosya gradle. Bu şekilde, görevler.gradle Eclipse dosyaları ant yapı ile alt projeler bir dizi oluşur bütün büyük projeler tarafından kullanılan bir dosyadır.

CEVAP
7 NİSAN 2010, ÇARŞAMBA


0,9, yeni bir özelliği vardır. apply from: 'other.gradle' komutunu kullanabilirsiniz.

Aynı şey hakkında sorum okuyun: http://stackoverflow.com/questions/2566685/is-there-a-way-to-split-factor-out-common-parts-of-gradle-build

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Make:

    Make:

    23 Mart 2006
  • Motor Trend Channel

    Motor Trend

    11 Mart 2006
  • Perihelion

    Perihelion

    23 NİSAN 2008