我有一個使用 Vercel 部署的前端 React 應用程式,repo 在 Github 上。以前所有程序都很好,每次我在 repo 上推送一些更新時,Vercel 都會重新部署它并且我的網站是最新的。
但是現在部署崩潰回傳錯誤sh: webpack: command not found。我不明白,因為webpack我的 devDependencies 中存在package.json,在我的機器上一切正常npm i,npm run build并且npm run dev.
據我了解,盡管安裝順利,但在 Vercel 的構建程序中,構建命令崩潰并出現錯誤 127 找不到 webpack。
來自 Vercel 的日志:
Previous build cache not available
Cloning completed: 695.423ms
Not using Build Cache
Running "vercel build"
Vercel CLI 28.4.15
Running "install" command: `npm i`...
added 46 packages, and audited 47 packages in 4s
1 package is looking for funding
run `npm fund` for details
found 0 vulnerabilities
> konflx-todolist@1.0.0 build
> echo 'Building webpack dist folder' && rm -rf dist && webpack --mode production --env production
Building webpack dist folder
sh: webpack: command not found
Error: Command "npm run build" exited with 127
包.json:
{
"name": "konflx-todolist",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "echo 'Building webpack dist folder' && rm -rf dist && webpack --mode production --env production",
"dev": "webpack serve --config webpack.config.js",
"testDev": "webpack-dev-server --https"
},
"keywords": [],
"author": "konflex",
"license": "ISC",
"devDependencies": {
"@babel/core": "^7.15.8",
"@babel/plugin-proposal-class-properties": "^7.14.5",
"@babel/preset-react": "^7.14.5",
"babel-loader": "^8.2.2",
"babel-preset-react": "^6.24.1",
"bulma": "^0.9.4",
"css-loader": "^6.4.0",
"html-webpack-plugin": "^5.4.0",
"mini-css-extract-plugin": "^2.6.1",
"sass": "^1.56.0",
"sass-loader": "^13.1.0",
"style-loader": "^3.3.0",
"webpack": "^5.74.0",
"webpack-cli": "^4.10.0",
"webpack-dev-server": "^4.3.1"
},
"dependencies": {
"@fortawesome/fontawesome-svg-core": "^6.2.0",
"@fortawesome/free-regular-svg-icons": "^6.2.0",
"@fortawesome/free-solid-svg-icons": "^6.2.0",
"@fortawesome/react-fontawesome": "^0.2.0",
"@iconicicons/react": "^1.5.0",
"@loadable/component": "^5.15.0",
"classnames": "^2.3.1",
"dotenv": "^16.0.0",
"framer-motion": "^7.3.5",
"rc-pagination": "^3.1.17",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-icons": "^4.4.0",
"react-router-dom": "^5.3.0",
"uuid": "^8.3.2"
}
}
我的機器在node v18.12.1和上運行npm 8.19.2,我最近都更新了。然后我降級以獲得相同的結果。有什么線索嗎?
uj5u.com熱心網友回復:
在 Vercel 中傳入的時候--mode production沒有webpack安裝devDependencies。通過呼叫webpack它解決了這個問題。如果要使用生產模式,則必須安裝所有 devDependencies 才能構建專案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/532735.html
標籤:反应网页包韦尔塞尔
