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

Phoenix Watcher报错:可执行文件不存在,命令行执行却正常

解决Phoenix项目TypeScript Watcher启动报错问题

可能的原因

Phoenix的Watcher在启动子进程时,工作目录或环境变量与手动执行命令时存在差异,导致相对路径的tsc无法被正确解析;或者直接调用tsc脚本时,其Shebang指定的Node路径在Watcher环境中不可用。

解决方案

方案1:用npx调用tsc(推荐)

无需手动指定相对路径,让npx自动查找node_modules中的可执行文件,配置修改为:

typescript: [
  "npx",
  "tsc",
  "--noEmit",
  "--watch",
  "-p",
  "assets"
]

方案2:用Node直接执行tsc脚本

明确指定用Node运行tsc,避免Shebang路径问题:

typescript: [
  "node",
  "./assets/node_modules/typescript/bin/tsc",
  "--noEmit",
  "--watch",
  "-p",
  "assets"
]

方案3:使用绝对路径

在配置中通过Elixir的Path.expand生成绝对路径,确保Watcher能准确定位到tsc:

typescript: [
  Path.expand("./assets/node_modules/typescript/bin/tsc"),
  "--noEmit",
  "--watch",
  "-p",
  "assets"
]

额外检查

如果以上方案无效,可执行以下命令确保tsc有可执行权限:

chmod +x ./assets/node_modules/typescript/bin/tsc

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 21:52:03