[英]Next.js - `npm run build` failed
嘗試使用target: 'serverless'
next.config.js
target: 'serverless'
in next.config.js
構建我的應用程序(為了在 AWS Lambda 上部署)。 運行npm run build
我得到以下輸出:
Warning: Built-in CSS support is being disabled due to custom CSS configuration being detected.
See here for more info: https://err.sh/next.js/built-in-css-disabled
info - Using external babel configuration from C:\Users\User\Desktop\mysite\.babelrc
info - Creating an optimized production build
warn - Compiled with warnings
./node_modules/require_optional/index.js
Critical dependency: the request of a dependency is an expression
./node_modules/node-pre-gyp/lib/pre-binding.js
Critical dependency: the request of a dependency is an expression
./node_modules/node-pre-gyp/lib/util/versioning.js
Critical dependency: the request of a dependency is an expression
./node_modules/node-fetch/lib/index.js
Module not found: Can't resolve 'encoding' in 'C:\Users\User\Desktop\mysite\node_modules\node-fetch\lib'
./node_modules/mongodb/lib/operations/connect.js
Module not found: Can't resolve 'mongodb-client-encryption' in 'C:\Users\User\Desktop\mysite\node_modules\mongodb\lib\operations'
./node_modules/node-pre-gyp/lib/util/compile.js
Module not found: Can't resolve 'node-gyp' in 'C:\Users\User\Desktop\mysite\node_modules\node-pre-gyp\lib\util'
./node_modules/node-pre-gyp/lib/util/compile.js
Module not found: Can't resolve 'npm' in 'C:\Users\User\Desktop\mysite\node_modules\node-pre-gyp\lib\util'
./node_modules/node-pre-gyp/lib/util/nw-pre-gyp/index.html 1:0
Module parse failed: Unexpected token (1:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
> <!doctype html>
| <html>
| <head>
> Build error occurred
Error: package.json does not exist at C:\package.json
at Object.module.exports.wr/F.exports.find (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:188263:15)
at Object.<anonymous> (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:154078:28)
at Object.paWE (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:154141:30)
at __webpack_require__ (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:23:31)
at Object.xDbK (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:189175:64)
at __webpack_require__ (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:23:31)
at Object.gL7F (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:123042:67)
at __webpack_require__ (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:23:31)
at Module.IlR1 (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:53618:12)
at __webpack_require__ (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:23:31)
at Module.ScIc (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:81256:17)
at __webpack_require__ (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:23:31)
at C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:91:18
at Object.<anonymous> (C:\Users\User\Desktop\mysite\.next\serverless\pages\_error.js:94:10)
at Module._compile (internal/modules/cjs/loader.js:1133:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
info - Collecting page data .npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! client@0.1.0 build: `next build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the client@0.1.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\User\AppData\Roaming\npm-cache\_logs\2020-09-12T19_38_11_418Z-debug.log
這個錯誤是什么意思?
Error: package.json does not exist at C:\package.json
那么所有Module not found: Can't resolve
的Module not found: Can't resolve
呢Module not found: Can't resolve
錯誤?
編輯:
我在項目文件夾中有package.json
。
當我運行npm run dev
它工作得很好。
我不知道他為什么抱怨C:\\package.json
(該項目不在C:\\
,而是在C:\\Users\\User\\Desktop\\mysite
)
當您npm run
,它將運行目錄中 package.json 的script
部分中的任何內容,但由於某種原因,它在此處被調用。 我認為有2種可能性。
1/您當前的 package.json 以某種方式查找 C:\\package.json 並且發生錯誤
2/由於某種原因,您的 npm 緩存包含 C:\\package.json 嘗試npm cache clean
或npm cache clean --force
我想當你讀到這個的時候:
npm ERR! This is probably not a problem with npm.
可能不依賴於 Npm 或 nodejs。 我假設此文件夾中缺少一些模塊:
./node_modules/node-fetch/lib/index.js
Module not found: Can't resolve 'encoding' in
'C:\Users\User\Desktop\mysite\node_modules\node-fetch\lib'
./node_modules/mongodb/lib/operations/connect.js
Module not found: Can't resolve 'mongodb-client-encryption' in
'C:\Users\User\Desktop\mysite\node_modules\mongodb\lib\operations'
./node_modules/node-pre-gyp/lib/util/compile.js
Module not found: Can't resolve 'node-gyp' in
'C:\Users\User\Desktop\mysite\node_modules\node-pre-gyp\lib\util'
./node_modules/node-pre-gyp/lib/util/compile.js
Module not found: Can't resolve 'npm' in
'C:\Users\User\Desktop\mysite\node_modules\node-pre-gyp\lib\util'
我建議在控制台中寫:
npm install encoding -g
npm install mongodb-client-encryption -g
npm install node-gyp -g
npm install npm@latest -g
並將文件夾更改為“C:\\Users\\User\\Desktop\\mysite”,然后鍵入:
npm install encoding --save
npm install mongodb-client-encryption --save
npm install node-gyp --save
npm install npm@latest --save
還有一件事,你做了“npm init”嗎? 要初始化您的文件夾,然后對其進行編輯。
我有這個錯誤,我的解決方案是:
首先,在packege.json文件中,在腳本部分,我們必須修改屬性“build”:“next build && next export”,並添加一個新的屬性“export”:“next export”
其次,我們必須在項目的根目錄中建立組件和數據文件夾。
第三:使用命令:npm dev build。 這為您提供了一個名為“out”的文件夾。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.