Ejabberd

如何將新模組添加到正在執行的 ejabberd 節點?

  • March 25, 2019

我跟進了本教程https://blog.process-one.net/elixir-sips-ejabberd-with-elixir-part-1/如何編寫 ejabberd 模組。這很好用,我把模組放到 ejabberd/src 然後編譯所有東西。

但這對我來說是很多工作。每次在開發過程中更改一行程式碼時,我都必須使用新更改的模組從頭開始重新編譯 ejabberd。有什麼方法可以編譯模組然後將其複製到 ejabberd 模組路徑?

如果是,ejabberd 模組路徑在哪裡?如果是,我應該閱讀什麼教程?

用法範例:編輯 src/mod_echo.erl 以添加一些相關更改。現在:

$ make
Compiled src/mod_echo.erl
$ sudo make install
...
$ ejabberdctl update_list
mod_echo
$ ejabberdctl update mod_echo

從現在開始,新程式碼在 ejabberd 中執行。

在您的情況下,您將模組源文件複製到 ejabberd 源路徑中,並將它們編譯為就好像它們是另一個 ejabberd 模組一樣。或者您可以單獨編譯它們,並將 *.beam 文件與所有其他 ejabberd 光束文件一起安裝(位置取決於您的系統)。

引用自:https://serverfault.com/questions/959527