Digital Ocean App Platform构建Vue项目时Vite not found故障排查
Digital Ocean App Platform Vue站点构建失败:vite未找到的排查方向
此前在Digital Ocean App Platform部署Vue.js静态站点,使用vite build构建数月均正常,今日执行自定义构建命令npm run build时突然失败,报错信息如下:
Running custom build command: npm run build [2024-05-07 13:21:23] │ [2024-05-07 13:21:23] │ > project@1.0.0 build [2024-05-07 13:21:23] │ > vite build [2024-05-07 13:21:23] │ [2024-05-07 13:21:23] │ sh: 1: vite: not found [2024-05-07 13:21:23] │ building: exit status 127 [2024-05-07 13:21:23] │ ERROR: failed to build: exit status 1
项目的package.json配置:
{ "name": "project", "version": "1.0.0", "private": true, "scripts": { "dev": "vite", "build": "vite build", "preview": "vite preview" }, "dependencies": { "axios": "^1.6.8", "pinia": "^2.1.7", "vue": "^3.3.4", "vue-router": "^4.3.2", }, "devDependencies": { "@mdi/font": "^7.4.47", "@vitejs/plugin-vue": "^5.0.4", "vite": "^5.2.11" } }
已尝试操作:更新依赖、删除package-lock.json后重新推送,问题仍未解决。
可能的原因:
- package.json语法错误:dependencies中
vue-router条目末尾多了一个逗号,严格的JSON解析器会因此报错,导致依赖安装流程中断,devDependencies中的vite未被安装。部分环境对这种尾逗号兼容性较强,但平台可能最近升级了解析规则,触发了这个问题。 - 构建环境依赖安装失败:Digital Ocean构建阶段的
npm install可能因网络波动、源地址变更等原因静默失败,devDependencies未安装完成。需检查构建日志的依赖安装阶段,确认是否有404、超时等报错信息。 - 平台构建缓存损坏:App Platform的构建缓存可能出现异常,即使本地删除了package-lock.json,平台缓存的旧依赖状态仍在影响构建。可尝试在平台控制台手动清除构建缓存后重新触发构建。
- 平台构建逻辑变更:Digital Ocean最近可能调整了App Platform的构建流程,比如默认跳过devDependencies安装、变更npm版本或安装命令(如改用
npm ci),导致vite作为dev依赖未被正确安装。 - 权限或路径问题:构建环境中npm的全局路径或本地node_modules权限异常,导致vite命令无法被找到。不过这种情况突发出现的概率较低,可结合日志进一步排查。
内容的提问来源于stack exchange,提问作者supremesector
相关产品推荐
相关产品推荐

