2015-08-23 23 views
6

Yazmakta olduğum bir Elixir kitaplığı, kitaplığımı kendi projesine bağımlı yapan kullanıcılar tarafından kullanılması amaçlanan iki özel karıştırma görevine sahiptir. sadece benim projemde kullanılmak üzere tasarlanmıştır.Projeniz karma deposu olarak dahil edildiğinde bir karışım görevinin eklenmesini önleme

Buradaki sorun, her iki karışım görevinin de, projeyi benimsemelerini de ekledikten sonra projelerindeki kullanıcılara sunulmasıdır.

Bunu nasıl önleyebilirim? Mix yapılandırmamda package: [ files: [ etc ] ]'daki görevden kaçınmaya çalıştım, ancak benim test projemde hâlâ kitaplığı bir git deposu olarak belirtip belirttim.

cevap

3

Şu anda Mix, doğrudan özel görev fikrini desteklememektedir. Birkaç seçenekleri şunlardır:

  • (takma ad olarak, örneğin) ekleyin mix.exs bunu tanımla veya mix.exs üstünde tasks/my_task.exs ve Code.require_file "tasks/my_task.exs" içine oluşturun. Kullandığınız her mikser komutunda bir görevi tanımladığınız kodun çalıştırılacağı ikinci seçenek büyük değildir.

  • Sadece bir komut dosyası kullanın. Eğer çalıştırmak istediğinizde sadece bunu, o zaman isterseniz bir scripts dizin oluşturun ve: mix run scripts/do_x.ex arg1 arg2 arg3

+0

Harika, teşekkürler. :) – lpil