Je suis en train de construire un script sur ubuntu pour commencer un code Erlang de la mine:script pour démarrer le code Erlang
le script est quelque chose comme:
#!/bin/sh
EBIN=$HOME/path_to_beams
ERL=/usr/local/bin/erl
export HEART_COMMAND="$EBIN/starting_script start"
case $1 in
start)
$ERL -sname mynode -pa $EBIN \
-heart -detached -s my_module start_link
;;
*)
echo "Usage: $0 {start|stop|debug}"
exit 1
esac
exit 0
mais je vais avoir quelques problèmes. Tout d'abord, le code ne peut être exécuté que si le script est dans le même répertoire que les faisceaux, cela me semble étrange, j'ai vérifié les chemins, alors pourquoi le drapeau -pa ne fonctionne-t-il pas? Deuxièmement, le script (sans le -pa) fonctionne bien, mais si j'essaie de démarrer à la place du module principal (un gen_server) son superviseur (-s my_module_sup start_link) ça ne marche pas ... c'est étrange, parce que si je démarre le superviseur à partir d'un shell normal tout fonctionne bien. Troisièmement, le drapeau -heart devrait redémarrer le script en cas d'échec, mais si je tue le processus avec un kill Unix normal, le processus n'est pas redémarré.
Quelqu'un peut-il me donner quelques conseils?
Merci à l'avance,
PDN
salut, il y avait un problème dans le couper-coller je suppose, la commande est bien sûr erl, puis il y a une nouvelle ligne avec la partie d'exportation ... – pdn