25 Mart 2013 Pazartesi

Nutch Plugini Geliştirirken

Plugini hazırladıktan sonra bağımlılıklarını ivy.xml de düzenledikten sonra:

Üzerinde çalışılan nutch source klasörüne gidilir.
  • build.xml de iki noktadaki  "<packageset dir=" listelerinin en alt satırlarına  yeni plugin dizini eklenir. 
Örn:      <packageset dir="${plugins.dir}/benim_ilk_pluginim/src/java"/>
  • src/plugins dizini içerisindeki build.xml de aşağıdaki satırlar eklenir.
    Deploy bölümüne:  <ant dir="benim_ilk_pluginim/" target="deploy"/>
    Test bölümüne : <ant dir="benim_ilk_pluginim/" target="test"/>
    Clean bölümüne: <ant dir="benim_ilk_pluginim/" target="clean"/> 
  • Yeni bir repository kullanıyorsak bunu ivy/ivySettings.xml dosyasında eklemek gerekli.
    • <ibiblio name="yeni" 
      root="https://raw.github.com/ahmetaa/maven-repo/master"
      pattern="${maven2.pattern.ext}"
      m2compatible="true" />

      <chain name="default" dual="true">
      <resolver ref="local"/>
      <resolver ref="maven2"/>
      <resolver ref="sonatype"/>
      <resolver ref="yeniRepo"/>
       
      </chain>
      <chain name="internal">
      <resolver ref="local"/>
      </chain>
      <chain name="external">
      <resolver ref="maven2"/>
      <resolver ref="sonatype"/>
      <resolver ref="yeniRepo"/>
      </chain>
      <chain name="external-and-snapshots">
      <resolver ref="maven2"/>
      <resolver ref="apache-snapshot"/>
      <resolver ref="sonatype"/>
      <resolver ref="yeniRepo"/>
      </chain>

Karşılaşılan Problemler

  1. nutch pluginleri derlerken proje yapısını benim_ilk_pluginim/src/java şeklinde istiyor. Bu şekilde değil ise derlerken hata veriyor. Bunu aşmak için ln -s ile src dizini altında java klasörü için bir kısayol oluşturulabilir. (ln -s main/java/)
  2. Pluginin kullandığı tüm kütüphaneleri plugin.xml de belirtmek gerekiyor. Not: Kullandığı kütüphanelerin bağımlılıklarıda belirtilecek.

Hiç yorum yok:

Yorum Gönder