![](/img/trans.png)
[英]Where to start? Aesthetic changes to a .net application (without source code)
[英]Elixir source code in an application
我想將具有Elixir后端的應用程序分發給最終用戶,以便可以在自己的計算機上運行。 有沒有一種方法可以使他們無權訪問原始源代碼,但可以向我發送我可以分析的崩潰報告?
假設將Elixir系統開發為適當的OTP應用程序,則可以使用exrm構建OTP版本,並將其分發給客戶端。 釋放剝離了所有編譯時結構,例如源代碼或測試。
基本上,您需要將exrm作為依賴添加到mix.exs
,然后:
mix deps.get
MIX_ENV=prod mix compile --no-debug-info
MIX_ENV=prod mix release
生成的發行版將位於項目根目錄下的rel/your_app_name
文件夾中。 它還將在erts-XY
子文件夾中包含嵌入式Erlang運行時。 這意味着您不需要在目標計算機上安裝Erlang,但是需要在它的精確副本上構建發行版(OS版本和arch)。
如果刪除erts-XY
文件夾,則生成的發行版仍然可以使用,但是需要將Erlang安裝在系統上並且在路徑中可用。 這使發行版更具跨平台性,但自包含性較低。
無論哪種方式,您都不需要在目標計算機上使用Elixir。 必要的文件將包含在生成的OTP版本中。
最后說明:當前exrm
在Windows上不起作用(但已完成一些工作以解決此問題),因此,如果這是您的目標操作系統,則需要尋找其他方式來生成發行版。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.