Pergunta

Eu escrevi um aplicativo Erlang simples usando Gen_Server.

Ao iniciá -lo com a aplicação: Iniciar (MyApp), recebo a seguinte tupla ...

{Erro, {Bad_Application, {Aplicativo, MyApp ... (restante da minha configuração de aplicativo).

Não há outro erro ou mensagens de aviso. Também tentei no Google Exemplos de como configurar o Gen_Server e também o próprio erro. Estou surpreso com a pouca informação lá fora.

Eu poderia começar a tentar depurar OTP ?? Quaisquer indicadores seriam apreciados.

Foi útil?

Solução

Presumo que haja um erro no seu arquivo de configuração. Uma coisa que você poderia tentar fazer é

file:consult("<your-app-config-file>").

Se ele retornar um erro, você saberá que esse é o problema ..

Outras dicas

Há muita informação sobre como implementar um aplicativo Erlang no Seção de "aplicação" dos princípios de design de OTP. Parece que você está tentando usar um Gen_Server como retorno de chamada para o aplicativo que você está iniciando. Isso simplesmente não vai funcionar.

A configuração mais comum para um aplicativo é ter um módulo de retorno de chamada do aplicativo que inicie um supervisor que tenha um Gen_Server em algum lugar como trabalhador. Os aplicativos não precisam iniciar nenhum processo. Os aplicativos podem existir puramente para carregar alguns módulos de biblioteca na VM, como o stdlib inscrição. Isso possibilita que outros aplicativos tenham dependências das bibliotecas.

Você também pode querer dar uma olhada no seguinte tutorial sobre como depurar funções de Erlang:

http://aloiroberto.wordpress.com/2009/02/23/tracing-erlang-functions/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top