2011-02-15 18 views
9

Erlang iş akışınızı nasıl düzenlersiniz? Ben şimdi biraz Erlang öğreniyorum ve her düzenleme sonrası tüm sürümleri yeniden derlemek, yeniden inşa etmek ve yeniden başlatmak (Ben OTP'ish şeyler tutmak için çalışıyorum), Rebar kullanıyorum. Bunu yapmak için daha akıllı bir yol olduğundan eminim.Erlang iş akışı

eTorrent yılında

cevap

3

, ben sizin gibi olabilecek küçük bir hile kullanıyorum:

Eğer bir geliştirme salınımını kurduk

, komutunu aşağıdaki tanıma sahip make console yürütebilirsiniz: temelde

console: 
    dev/etorrent-dev/bin/etorrent console \ 
      -pa ../../apps/etorrent/ebin 

, Çoğu şey için sürümleri kullanır, ancak geçersiz kılar, uygulama ebin'i normalde yazılımı kurduğunuz noktada dışar. Şimdi, bir konsol çalıştırarak, kodunuzu düzenleyebilir, make (Emacs'te bir tuş kombinasyonunu vurdum), hataları düzeltebilir, make'u tekrar çalıştırabilirsiniz. Değişiminizden memnun olduğunuzda, konsola (erlang kabuğu) girer ve l(ModuleToLoad)'u çalıştırırsınız, bu noktada çalışan sistem yeni kodu enjekte eder. OTP, sıcak dağıtılan kod değişikliğini otomatik olarak alacak ve işlemleri değiştirecektir. Aslında, kod üzerinde çalışırken sadece nadiren yeniden başlatmanız gerekir.

Günümüzde testlerimiz de var, böylece yeni kodun çalışması için biraz daha fazla garanti istiyorsanız, test çerçevesinin yeni oluşturulmuş kodunuz üzerinde çalıştırılması için etorrent'de make test'u çalıştırabilirsiniz.

3

Chicago Boss ile sadece web tarayıcısında "Yenile" hit: Hedefiniz web değil gelişmedir

http://www.chicagoboss.org/

bile, daha eğlenceli Erlang öğrenmek için bir yol olabilir mevcut iş akışınız. CB, tarayıcıda derleme ve çalışma zamanı hataları oldukça güzel yazdırır.

3

Korkunç düzenleme/recompile/restart döngüsünü önlemek için Sync kullanıyorum. Kaynak dosyalarınızdaki değişiklikleri izler, ardından sadece değiştirilen modülü yeniden derler ve yeniden yükler. Hataları ve uyarıları konsola yazdırır ve varsa bildirim-gönderme/büyütme için gönderir.

O sync:go().

daha iyi örneğin this rebar template bir göz atın etmek kadar kolaydır.

Bir kümede geliştiriyorsanız, başka bir özellik de senkronizasyonun "yama modu" dur. "Yama modu" ile her zaman senkronizasyon bir modülü başarıyla derler ve kümeye bağlı her düğüme derlenmiş kodu gönderir ve modülü yeniden yükler!

0

Her bir düzenlemeyle birlikte src dosyalarının otomatik olarak yeniden yüklenmesi için, otomatik eklentiyi rebar3'te deneyebilirsiniz.

Kısa bir süre önce yeniden inşaat demirine taşındım ve inşaat demiri ile kıyaslandığında daha kolay çalışmayı buldum.