2013-05-09 26 views
7

Tabaka için basit bir groovy tabanlı eklenti oluşturdum. Benim gradle.build dosyasındaBağlama özel kavanoz eklentisini uygula

aşağıdakileri sorunum:

apply plugin: 'groovy' 

dependencies { 
    compile gradleApi() 
    compile localGroovy() 
} 

Her şey, bir derleme dizini harika olsun işleri ve .jar lib klasöründe oluşturulur, ben bu bağımsız eklenti sanırım.

Şimdi benim gradle instalation içine bu yeni eklenti kayıt nasıl bilmek istiyorum, bu yüzden eklentisi uygulamak yapabilirsiniz: Aşağıdaki 'myPlugin' Yaptığım:

  • eklentisine eklentisi droped kurulum
  • klasör
  • aynı özellikleri src dir (çaresizlik eylemi)
META-INF dosyasını yerleştirilen myplugin.properties dosyası düzenlendi ve META-INF klasörüne dahil

Eh ben hata alıyorum eklentisi uygulamak için denemek her adımdan sonra: 'myplugin' kimlikli

  • Plugin bu hakkı elde nasıl

bulunamadı ??

Eklentimi çalıştıracak adımların listesini belirtebilir misiniz? yardım

cevap

7

kullanıcı kılavuzunun chapter 58 size gerekli olan tüm bilgiler için

Teşekkür (yeni Im + harika gradle kadar). Özetle:

  • src, proje yapının içinde senin myPlugin.properties koyun/main/resources/META-INF /gradle-plugins/genellikle komut dosyasında
  • yaptığı gibi

  • kavanoz oluşturun

    buildscript { 
        repositories { 
         flatDir dirs: "build/libs" 
        } 
        dependencies { 
         classpath "your.group:your-plugin:1.0.0" 
        } 
    } 
    

Veya ne olursa olsun: Bu eklenti kullanmak isteyen, böyle bir şey için bir buildscript kapatma eklemek repositories ve dependencies için ayarları yapın, ancak burada yaptığım gibi classpath yapılandırmasını kullanmanız gerekir. Kavanozu yaptığın gibi Gradle'ın eklenti dirseğine katılabileceğini düşünmüyorum (ya da yapmalı!).

+0

Bunu denedim ve hala aşağıdaki hatayı aldım: ': classpath' yapılandırması için tüm bağımlılıklar çözülemedi. > org.gradle.mypluginpack bulunamadı: MyPlugin: 1.0-SNAPSHOT. İstenen: : test: belirtilmemiş – RicardoE

+0

teşekkürler, başka herhangi bir fikir? – RicardoE

+1

Eh, muhtemelen belirttiğiniz depo, eklentinizin kavanozunu içermiyordu. Benim 'flatDir' sadece örnek uğruna oldu. Bağımlılık yönetimi için aynı kural, buildscript'in kapanmasında geçerlidir. –

1

Tüm Gradle dağılımında (veya GitHub numaralı telefondan) samples/customPlugin ve samples/customDistribution örneklerine bakın. İhtiyacın olan tüm bilgilere sahip olmalılar.