You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Erlang 22.3在CentOS7执行.sh构建命令报错如何修复

报错根因

你遇到的报错是Erlang解析传入的执行代码时触发的语法错误,错误提示语法错误在逗号之前指向调用Erlang时传入的代码第一行存在格式问题,init terminating in do_boot说明错误发生在Erlang虚拟机启动加载代码阶段,和.sh脚本中调用Erlang的参数写法直接相关。

修复方案

  • 首先定位脚本中调用erl命令的行,优先检查-eval/-run参数后面跟的Erlang代码:
    • 确认所有Erlang表达式以英文句号.结尾,多数此类报错都是脚本编写时漏了这个必要结尾
    • 检查字符串引号是否配对、特殊符号是否正确转义,bash中双引号嵌套需要加反斜杠转义
    • 检查逗号是否多余/缺失,比如参数列表最后一个元素后不要加多余逗号
  • 把-eval后的代码单独复制到Erlang交互式shell中执行,确认没有语法报错后再放回shell脚本
  • 如果脚本中有动态变量拼接Erlang代码,打印拼接后的完整代码内容,检查变量插值是否引入了多余的符号
  • 参考正确的Erlang调用写法示例:
# 示例:在shell脚本中调用Erlang执行输出命令
erl -noshell -eval "io:format(\"hello world~n\", []), init:stop()."

额外排查建议

如果按上面步骤还是找不到问题,可以在erl启动参数中加上+v开启verbose日志,或者直接读取生成的erl_crash.dump文件,搜索syntax error相关字段定位具体出错的代码内容。


内容的提问来源于stack exchange,提问作者Nguyễn Minh Phương

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 10:39:04