Adicionar caminho para Erlang Caminho de pesquisa?
Pergunta
Eu instalei recentemente Erlang RFC4627 (JSON-RPC) com o pacote debian. Corri o servidor de teste usando:
sudo erl -pa ebin
e, em seguida, no prompt:
test_jsonrpc:start_httpd().
retornou
ok
Eu testei com http: //:. 5671 / e obteve as mensagens de sucesso
Quando tento executar RabbitMQ-HTTP2 no entanto, eu recebo os erros que o leia-me diz que são causados ??por código de rfc4627 não estar no caminho de pesquisa erlang. Como faço para colocá-lo no caminho. Eu vi alguma coisa no blog de Dave Thomas, que sugeriu colocar o caminho no arquivo:
~/.erlang
Isso não parece trabalhar para mim (talvez eu fiz de errado?).
Solução
O módulo de código é como você manipular o caminho dentro de uma aplicação.
As bandeiras -PA que você usou na iniciar o shell Erlang realmente se referir a uma função neste módulo:
add_patha(Dir) -> true | {error, What}
Você está certo sobre o arquivo .erlang em seu diretório pessoal - ele é executado em tempo de start-up da casca e você pode adicionar caminhos práticos
.Para uma aplicação, você pode iniciar o shell com um arquivo em lotes que chama algo como isto:
erl -pa ./ebin ../../lib/some/path/ebin
O comportamento bandeiras de erl é descrito aqui .
Para o gerenciamento caminho mais sofisticado que você precisa para se familiarizar com a forma como OTP gerenciamento de liberação é feito (mas eu suspeito que é um tempo afastado para você até o momento).