2015-08-23 39 views
6

Biblioteka Elixir, którą piszę, ma dwa niestandardowe zadania miksowania, z których jeden przeznaczony jest do użycia przez użytkowników, którzy spowodowali, że moja biblioteka jest zależna od ich projektu, jeden przeznaczone do wykorzystania tylko w ramach mojego projektu.Zapobieganie dołączaniu zadania mieszania, gdy projekt jest dołączany jako zbiór mix

Problem polega na tym, że oba zadania mieszania są dostępne dla użytkowników w ich projektach po dodaniu kopalni jako dep.

Jak temu zapobiec? Próbowałem uniknąć zadania w package: [ files: [ etc ] ] w mojej konfiguracji Mix, ale wciąż było dostępne w moim projekcie testowym, który określał moją bibliotekę jako dep przez git.

Odpowiedz

3

Obecnie Mix nie obsługuje bezpośrednio idei prywatnych zadań. Kilka opcji są:

  • Zdefiniuj go w mix.exs (na przykład jako alias) lub utworzyć je wewnątrz tasks/my_task.exs i Code.require_file "tasks/my_task.exs" na górze mix.exs. Druga opcja nie jest świetna, ponieważ wykonasz kod, który definiuje zadanie dla każdej komendy mieszania, której używasz

  • Po prostu użyj skryptu. Utwórz katalog scripts jeśli chcesz, a potem, kiedy chcesz go uruchomić, po prostu zrobić: mix run scripts/do_x.ex arg1 arg2 arg3

+0

Wielki, dzięki. :) – lpil