我正在尝试部署我的NextJs应用程序。在过去的几天里,我一直收到同样的2个错误:
1://并且稍后将出现错误
2:错误:未生成无服务器页面。了解更多信息:https://err.sh/vercel/vercel/now-next-no-serverless-pages-built
我不知道如何解决这两个问题。如果有人帮助,我将不胜感激
这是我的package.json文件:
{
"name": "my-dev-portfolio",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo "Error: no test specified" && exit 1",
"dev": "next",
"bulid": "next build",
"start": "next start",
"now-build": "next build"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"@fortawesome/fontawesome-svg-core": "^6.1.1",
"@fortawesome/free-brands-svg-icons": "^6.1.1",
"@fortawesome/free-solid-svg-icons": "^6.1.1",
"@fortawesome/react-fontawesome": "^0.2.0",
"next": "^12.2.0",
"react-dom": "^18.2.0",
"typewriter-effect": "^2.19.0"
}
}
next.config.json文件:
module.exports = {
target: "serverless"
}
now.json文件:
{
"version": 2,
"builds": [{"src":"package.json", "use": "@now/next"}]
}
如果您使用的是新版本的节点,请尝试此操作
导航到Vercel仪表板中项目的设置
https://vercel.com/[用户名]/[项目]/设置
按照此过程修复:
- 向下滚动到页面上搜索Node.js版本的Node.js版本
- 选择一个较新的版本,可能是16x或18x,而不是14x
- 单击"保存"按钮
- 导航回部署https://vercel.com/[用户名]/[项目]/部署
- 单击最近提交的汉堡包菜单(三个点(
- 然后单击"REDEPLOY"按钮,并确保不要选择缓存选项
应用程序现在应该成功构建
确保用您各自的vercel用户名和vercel项目id 替换[用户名]和[项目]
对于now.json
:您使用的是一个非常旧的方法。Vercel现在可以检测您的框架。查看博客中的公告:零配置部署.
对于使用target: serverless
的next.config.js
,这也是完全不需要的。如果您正在部署到Vercel,只需将其移除即可。对于那些好奇的人,请查看https://nextjs.org/docs/advanced-features/output-file-tracing有关取代CCD_ 4的更好解决方案的更多信息。
您不需要now.json文件。删除它并再次尝试部署
对我来说,这是哨兵造成的。该应用程序在本地运行良好,但在构建时失败,并出现此错误。当我从最后一行删除SentryConfig时,将其从中删除
module.exports = withSentryConfig(nextConfig, SentryWebpackPluginOptions)
至
module.exports = nextConfig
它再次建立在vercel上。
我怀疑这是由@ssentint/nextjs中的一个错误引起的,因为它没有通过pageExtensions: ['page.tsx', 'page.ts', 'page.jsx', 'page.js']
在构建时正确地转换为next.js。