“hvigor Create hvigor server failed. No Idle daemon can be found“ 的编译错误
本来是昨晚的项目,当时还能正常预览的,今天就不太行了,然后我就捣鼓啊捣鼓,
最后改了:daemon-const.js和hvigor-java-daemon.js
- 把 daemon 监听范围从 45000-45099 改成了 55000-55099
- 把 java daemon 起始端口从 45050 改成了 55050
你们可以根据自己的改端口。
这是可行的临时修复方案,不是最优雅,但很现实
风险是 DevEco 更新后可能被覆盖,到时候要再改一次
最后总结一下:
DevEco Studio 的 Preview / hvigor daemon 在我的 Windows 环境下无法启动,报错为:
Create hvigor server failed. No Idle daemon can be found.
进一步通过 hvigor --status --debug 排查,发现底层原因是:
hvigor daemon: No available port was found in the specified range
已确认:
1. hvigor daemon 固定使用 45000-45099 端口段
2. 我本机该端口段无法绑定,但其他端口段(如 55000-55099)可以正常绑定
3. 将 hvigor 源码中的固定端口改为 55000-55099 后,Preview 恢复正常
当前问题并非项目代码错误,而是 hvigor/Previewer 对固定端口段依赖过强,且缺少自动切换机制。
也期望
支持自动选择可用端口
支持用户配置 daemon 端口范围
在报错信息中明确提示端口段不可用
希望越做越好
更多推荐

所有评论(0)