🐛

Error: <Html> should not be imported outside of pages/_document.

2024/03/09に公開1

事象

next@13.4.7の次のバージョンからnext@14.1.3(2024年3月時点最新)まで、create next-appで生成したプロジェクトをbuildすると、表題のエラーが発生しビルドに失敗します。

原因

内部の詳しい原因はわかりませんが、
ローカル環境、例えば、.zshrcなどに以下を記載していないでしょうか?
これが原因のようです。

NODE_ENV=development

対応

削除できない理由がある場合は
buildコマンドにNODE_ENV=productionを追加することで解決します。
エラーメッセージは役に立たないです。。

{
  "private": true,
  "scripts": {
    "dev": "next",
    "build": "NODE_ENV=production next build",
    "start": "next start"
  },
  "dependencies": {
    "next": "latest",
    "react": "^18.2.0",
    "react-dom": "^18.2.0"
  },
  "devDependencies": {
    "@types/node": "^18.0.0",
    "@types/react": "^18.0.14",
    "@types/react-dom": "^18.0.5",
    "typescript": "^4.7.4"
  }
}

参考

https://github.com/vercel/next.js/issues/56481
https://github.com/vercel/next.js/issues/52158

Discussion

kikusuikikusui

これのおかげで数時間溶かしてたので助かりました!