假设您正在使用
turbo
和
pnpm
。
1. 在
package.json
文件中验证您的软件包名称。
想象一下,您有这样的结构:
root/
├─ apps/
│ ├─ web/
├─ packages/
│ ├─ tsconfig/
这是你的
pnpm-workspace.yaml
文件:
packages:
- "apps/*"
- "packages/*"
然后你必须确保在你的web项目的package.json文件中,
name
字段也代表着
web
,就像这样:
{
"name": "web",
"scripts": {
"dev": "next dev",
"build": "next build",
},
}
2. 仔细检查你的根目录下的 `package.json` 和 `turbo.json` 文件。
在 turborepo 项目中,一个最简化的根目录下的 `package.json` 文件如下:
{
"scripts": {
"build": "turbo run build",
"dev": "turbo run dev",
},
"devDependencies": {
"turbo": "^1.8.3"
},
"packageManager": "pnpm@7.15.0"
}
在根目录下还有一个名为
turbo.json
的文件。
{
"$schema": "https://turbo.build/schema.json",
"pipeline": {
"build": {
"dependsOn": ["^build"],
"outputs": [".next/**", "!.next/cache/**"]
},
"dev": {
"cache": false,
}
}
}
3. 检查您在Vercel UI中的
build
和
install
命令。
前往Vercel UI中您项目的
设置
->
常规
选项卡,并验证命令:
![Build and Install](https://istack.dev59.com/MSV6o.webp)
构建
命令应该是:
build
cd ../../ && pnpm run build --filter=web...
并且 install
命令(假设您正在使用 pnpm)
pnpm install
4. 在 Vercel UI 中检查 "根目录"
在 Vercel UI 中,转到项目的 Settings
-> General
选项卡,并验证项目路径:
![Project Root](https://istack.dev59.com/uPzKx.webp)
验证一下它是否代表了你的next.js项目路径:
apps\web