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

Azure App Service部署报错“Unexpected End of File”,请求协助定位问题

Azure App Service部署报错“Unexpected End of File”,请求协助定位问题

你好,我仔细看了你的部署日志和问题描述,已经尝试了回滚代码、重新安装依赖、新建部署槽这些常规操作都没解决,而且本地构建完全正常,确实挺头疼的。从日志里能找到几个关键线索,咱们一步步来定位问题:

先看日志里的核心异常诱因

首先注意到日志里反复出现:

CMD.EXE was started with the above path as the current directory.
UNC paths are not supported. Defaulting to Windows directory.

这说明Azure部署过程中用CMD执行脚本时,因为工作目录是UNC路径导致了异常,后续的ng build命令被默认切换到Windows目录执行,自然找不到你的项目文件,这大概率是触发“Unexpected end of file”的根源。另外还有几个潜在问题:

  • npm版本不兼容:你的package-lock.json是lockfileVersion@2,但Azure上用的npm 6.13.4只支持lockfileVersion@1,会导致依赖安装异常
  • Node版本不一致:日志里提示脚本用的node是10.6.0,但npm用的是10.19.0,路径冲突可能影响构建

具体排查和解决步骤

1. 解决UNC路径问题,让构建在正确的目录执行

你可以尝试在package.json的build脚本里加上--scripts-prepend-node-path参数,解决Node路径不一致的问题,同时确保脚本在项目目录执行:
修改package.json里的build命令:

"build": "ng build --prod --configuration dev --buildOptimizer=false --scripts-prepend-node-path"

或者,在Azure App Service的配置中,添加应用设置WEBSITE_RUN_FROM_PACKAGE并设置为1,这个设置会让App Service从本地包运行,避免UNC路径的问题。

2. 修复package-lock.json版本兼容问题

因为Azure上的npm 6.x不支持lockfileVersion@2,你可以:

  • 本地用npm 6.x重新生成package-lock.json:先降级本地npm到6.x(npm install -g npm@6),然后删除原有的package-lock.json和node_modules,重新执行npm install,再提交新的lock文件
  • 或者升级Azure上的Node版本:在package.json里指定更高的Node版本(比如14.x,支持lockfileVersion@2),Azure会自动使用对应版本的npm:
"engines": {
  "node": "14.x",
  "npm": "6.x"
}

3. 手动执行构建,定位具体出错文件

登录到你的App Service的Kudu控制台,进入Debug console -> PowerShell,切换到你的项目目录(D:\home\site\wwwroot),然后手动执行构建命令:

ng build --prod --configuration dev --buildOptimizer=false

这里会输出更详细的错误信息,直接指出哪个文件导致了“Unexpected end of file”,比如可能是某个JSON文件(比如angular.json、环境配置文件)有语法错误,或者某个文件在Git推送时被截断了。

4. 处理phantomjs-prebuilt的安装异常

日志里phantomjs-prebuilt在UNC路径下安装失败,虽然是可选依赖,但可能干扰后续构建。你可以:

  • 在package.json里把它标记为可选依赖,或者直接移除(如果项目不需要的话)
  • 换成更兼容的替代方案,比如puppeteer

额外检查点

  • 验证angular.json的JSON格式:你附上的配置看起来没问题,但可以用在线JSON验证工具检查有没有语法错误
  • 检查Git仓库里的文件:确认所有项目文件都完整推送,没有因为大小限制或特殊字符导致截断

备注:内容来源于stack exchange,提问作者Kron

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 09:27:37