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

如何解决Travis CI上出现的Uncaught Error: spawn ... EACCES错误

问题解决方法

错误根因

你的配置存在两个核心问题导致权限报错仍然存在:

  1. 配置的chmod +x ./只会给当前目录赋予进入权限,不会给目标可执行文件./lib/serve.js添加执行权限
  2. Linux环境下直接执行JS文件还要求文件头部有对应的node解释器声明(shebang)
具体解决方案
  • 方案一:修正权限配置+补全shebang
    1. 修改Travis配置的before_install段,改为给目标文件单独加执行权限:
    before_install:
     - chmod +x ./lib/serve.js
    
    1. 检查serve.js源码第一行是否添加了shebang声明,没有的话补上即可:
    #!/usr/bin/env node
    // 剩余原有serve.js代码
    
  • 方案二(更稳妥,跨平台兼容无需处理权限)
    直接修改测试代码,所有平台都统一用node解释器执行目标脚本,完全规避执行权限和shebang的问题,修改后的exec_test函数如下:
    function exec_test(args, callback) {
      exec(process.execPath, [cmd].concat(args), opts, callback);
    }
    
  • 额外检查项
    确认yarn build执行完成后,serve.js确实被输出到了代码中指定的../lib路径下,避免文件不存在导致的类似报错。

内容的提问来源于stack exchange,提问作者Livio

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 09:06:02