問題タブ [relx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
erlang - relx がリリースを生成しないのはなぜですか?
私のrelx構成
私の .app ファイル
rebar を使用してアプリケーションをコンパイルした後、端末から relx を実行すると、次のような出力が得られます。
===> relx ビルド プロセスを開始しています ...
===> ディレクトリからの OTP アプリケーションの解決:
===> 欠落しているビーム ファイルのヒップ <<"/usr/lib/erlang/lib/hipe-3.10.2/ebin/hipe.beam">>
===> ディレクトリからの利用可能な OTP リリースの解決:
システムでリリースが指定されていません!
relx からのこのメッセージがわかりません。それは私のためにリリースを作成しませんか?
ハイペのインストール方法を教えてください。
アップデート
erlang を新規インストールした後、hipe エラー メッセージが表示されなくなりました。しかし、鉄筋は、システムによってリリースが指定されていないとまだ言っています。
file-permissions - Cowboy クイック スタート プロジェクトのビルドに relx を使用すると、アクセス許可が拒否されました
make
カウボーイ クイック スタート プロジェクトをしようとしていますがPermission denied
、relx
. で実行してもsudo make
。これに対する解決策はありますか?
ここに私のファイルリストがあります:
erlang - relx でビルドされた erlang リリースを実行すると起動エラーが発生する
私は rebar を使用して erlang リリースをビルドすることに精通しています。現在、relx を使用してリリースをパッケージ化しようとしています。
コードは erlang.mk でビルドします。バンドルしたいアプリケーションをリストした relx.config があります。コマンド
成功します。
ただし、リリースの開始は失敗し、クラッシュします。
これは、リリースが prim_inet:open/2 を見つけられないように見えます - 含むアプリケーションが開始されていないか、正しいパスがないためです。
relx.config に inets (およびその他のアプリケーション) をリストしてみました。無効。
relx ログから、私の erlang ライブラリ (/usr/local/lib/erlang/lib 内) について知っているようです。
不足しているものと、上記のリリースを機能させる方法を理解するのを手伝ってくれる人はいますか?
更新: 上記の ERL_LIBS ディレクトリは作成されません。一方、指定したアプリはすべて myrel/lib/ にあります。だから、何かが明らかに起きています。
感謝と最高の願いを込めて
イヴァン
erlang - Erlang relx -- すべての出力ファイルとは何ですか?それらをどのように使用すればよいですか?
OTP をより深く理解するという精神で、ミニマリストで必要最小限のアプリケーションを作成し、erlang.mk と relx でパッケージ化しました。
すべてが宣伝どおりに機能します。しかし、いくつかの重要な情報が relx のドキュメントとチュートリアルから欠落しているようです。たとえば、relx によって作成されたすべてのファイルとディレクトリをどうするかなどです。
たとえば、自分のリリースを別のハードウェアで実行したい場合、どのファイルを移動する必要があり、リリースを開始および停止するにはどうすればよいですか?
また、さまざまな出力ファイルについて知っておくべきことは他にありますか?
出力は次のとおりです。
どうもありがとう、
LRP
erlang - relx リリース アセンブラを使用してビルドされたアプリケーションで sync を適切に使用するにはどうすればよいですか?
relx を使用してアセンブルされたカウボーイ プロジェクトでオンザフライで再コンパイルするSyncを使用したいと考えています(Cowboy Getting Started Guideに従って)。
問題は、次のように my_application.app.src ファイルのアプリケーション リストで sync を指定して、アプリケーションで同期を開始できたとしても、次のようになることです。
relx アセンブラがソース コードを _rel ディレクトリに移動しないため、まだ機能しません (もちろん、そうすべきではありません)。
ソース ファイルの場所を Sync に伝える方法はありますか? それとも、私が完全に間違っていて、relx との Sync 統合を別の方法で行う必要があるのでしょうか?
erlang - OTP - Couchbeam を依存関係として追加 - ** 例外エラー: 未定義関数 jsx:decode/1
私は rebar を使用して、次のような依存関係を取得/コンパイルしていますrebar.conf
:
次に、relx を使用してリリースを生成します。relx.config には次のものがあります。
myapp.app.src:
couchdb を開始したら、コンソールでリリースを実行し、次の行で couchbeam をテストしようとします。
最後の行でエラーが表示されます:
** exception error: undefined function jsx:decode/1
これを解決するために、私は開いdeps/couchbeam/couchbeam.app.src
て変更しました:
そしてjsxを追加しました:
依存関係としてcouchbeamを追加した方法のセットアップに何か問題がありますか? 依存関係の .app.src をハックするべきではないように感じます
erlang - Erlang relx: appmon を追加しますが、アプリケーションは既に開始していると伝えました
牧場の例にappmon を追加してみます。これが私の relx.config ファイルです
生成後、アプリケーションの起動は成功しましたが、Erlang コンソールでの appmon の起動に失敗しました
appmon は既に開始されているように見えますが、appmon ウィンドウを表示するにはどうすればよいですか?
Erlang: R16B02
relx: 1.0.2