2

我需要将插件安装到 CouchDB。问题是我可以在服务器上访问的唯一文件夹是用户主目录。设置 ERL_LIBS env 变量后,我可以从 erl 控制台调用我的插件模块,但 CouchDB 返回 '{"error":"unknown_error","re​​ason":"undef"}'。

在 CouchDB 启动时包含外部库的正确方法是什么?

4

1 回答 1

2

我设法使用 couchdb shell 添加了一个 erlang 模块。这是我所做的:

  1. 我以交互模式启动了 couchdbsudo couchdb -i
  2. 将路径添加到列表的开头code:add_patha("/home/akshat/Desktop").
  3. 测试了路径列表code:get_path().
  4. 找到我的路径作为第一项
  5. 编译模块c("/home/akshat/Desktop/test").
  6. 加载模块code:load_file(test).
  7. 调用模块test:test()

要测试模块是否在启动时由 couchdb 自动加载,您可以重新启动 couchdb 并调用模块内的函数,而无需执行上述步骤。它应该按预期工作。

这是我用于测试目的的模块

-module(test).
-export([test/0]).

test()->
    hello.

我认为您所做的问题可能是您没有使用 couchdb shell 添加模块。

于 2015-01-22T13:19:02.053 回答