Windows 11下启动Phoenix应用时如何隐藏终端窗口
Phoenix Umbrella应用Windows部署问题解答
1. 如何隐藏控制台窗口?
可以通过VBS脚本包装bat启动命令实现无控制台窗口运行:
- 创建
start_demo.vbs文件,内容如下:
Set WshShell = CreateObject("WScript.Shell") WshShell.Run chr(34) & "你的demo.bat完整路径" & chr(34) & " start", 0 Set WshShell = Nothing
- 将脚本中的
你的demo.bat完整路径替换为实际路径(比如C:\demo\bin\demo.bat),用户双击该VBS文件即可无窗口启动应用。
2. demo.bat是否包含运行所需的Erlang VM和Elixir版本?
不需要在客户端机器单独安装Erlang或Elixir。mix release生成的发布包会将完整的Erlang运行时(BEAM)、编译好的应用字节码以及所有依赖打包到_build/prod/rel/demo目录中,demo.bat只是调用打包好的运行环境的启动脚本。
3. 若bat文件无法加载全部依赖,如何修复?
按以下步骤排查修复:
- 生成发布包前确保设置环境变量:在Windows终端执行
set MIX_ENV=prod - 清理旧构建文件:删除
_build目录,重新执行mix deps.get --only prod拉取生产环境依赖 - 重新编译并生成发布包:依次执行
mix compile、mix release demo - 注意:必须将整个
_build/prod/rel/demo目录拷贝到客户端,不能单独复制demo.bat——依赖和运行时都存放在该目录的lib、erts-*等子文件夹中
内容的提问来源于stack exchange,提问作者Flame_Phoenix
相关产品推荐
相关产品推荐

