Как вызвать модуль, который не находится в той же папке в Erlang? - PullRequest
1 голос
/ 09 мая 2011

Я изучаю один проект с открытым исходным кодом, домашняя страница здесь: https://github.com/kevsmith/gen_nb_server, я обнаружил, что структура проекта

src/
  gen_nb_server.erl
priv/
  example
    src/
      example.erl

когда я захожу в папку примеров и запускаю «make», и запускаю пример модуля с помощью «example: start_link ().», Он не может найти модуль gen_nb_server, я хочу знать, как вызвать модуль, который лежать в одной папке? спасибо!

Ответы [ 2 ]

5 голосов
/ 09 мая 2011

Вы можете использовать -pa (или -pz) для добавления каталогов верхнего уровня ebin и priv / example / ebin в начало (или конец) вашего пути кода.

# erl -pa gen_nb_server/ebin -pa gen_nb_server/priv/example/ebin
[...]
1> example:start_link().
{ok,<0.33.0>}
3 голосов
/ 09 мая 2011

В дополнение к тому, что упоминалось butter71 ... вы можете загружать код в самой оболочке ...

1> code:add_path("gen_nb_server/ebin").

вы также можете использовать code:add_patha или code:add_pathz для загрузки файлов луча вначало или конец списка путей ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...