11

最近、debianパッケージを使用してErlang RFC4627(JSON-RPC)をインストールしました。私は以下を使用してテストサーバーを実行しました:

sudo erl -pa ebin

そしてプロンプトで:

test_jsonrpc:start_httpd().

戻ってきた

ok

http://:5671 /でテストし、成功メッセージを受け取りました。

しかし、rabbitmq-http2を実行しようとすると、readmeに、rfc4627のコードがerlang検索パスにないことが原因であるというエラーが表示されます。どうすればパスに配置できますか。Dave Thomasのブログで、ファイルにパスを入れることを提案する何かを見ました。

~/.erlang

これは私にはうまくいかなかったようです(多分私はそれを間違ったのですか?)。

4

1 に答える 1

20

コードモジュールは、アプリケーション内でパスを操作する方法です。

Erlangシェルの起動に使用したフラグ-paは、実際にはこのモジュールの関数を参照しています。

add_patha(Dir) -> true | {error, What}

あなたはあなたのホームディレクトリにある.erlangファイルについて正しいです-それはシェルの起動時に実行され、あなたは便利なパスを追加することができます。

アプリケーションの場合、次のようなものを呼び出すバッチファイルでシェルを開始できます。

erl -pa ./ebin ../../lib/some/path/ebin

erlのフラグの動作については、ここで説明します。

より高度なパス管理を行うには、 OTPリリース管理がどのように行われるかを理解する必要があります(ただし、それはまだしばらく先のことだと思います)。

于 2009-08-06T07:04:05.953 に答える