Next.js 13+ 启动卡在“Starting the development server…”主因是默认启用 Turbopack 导致 WebStorm 兼容问题,应删掉 package.json 中 dev 脚本的 --turbopack,改用传统模式,并正确配置 NPM Run Configuration、tsconfig.json 及 V8 调试连接。

WebStorm 启动 Next.js 时卡在 “Starting the development server…”
这不是 WebStorm 本身的问题,而是 Next.js 13+ 默认启用 --turbopack 导致的兼容性问题——Turbopack 当前未被 WebStorm 的 Run Configuration 正确识别或注入调试上下文。
实操建议:
- 检查
package.json中的dev脚本:如果形如"dev": "next dev --turbopack",直接删掉--turbopack,改用传统 Webpack 模式 - 在 WebStorm 中新建 Run Configuration:类型选
NPM→ Command 填run→ Scripts 选dev→ 勾选Run npm install automatically before running - 别直接点绿色三角运行脚本;先点右上角配置下拉箭头,确认当前激活的是你刚建的
NPM配置,否则 WebStorm 可能 fallback 到 shell 执行,丢失 Node.js 环境变量和路径 - 仍卡住?终端里手动执行
npx next dev,看真实报错——常见是端口被占(EADDRINUSE)或node_modules权限异常(尤其 macOS / WSL)
tsconfig.json 配置错误导致类型推导全失效
Next.js 的类型不是靠 node_modules/next 自动注入的,它依赖项目级 tsconfig.json 显式继承和路径映射。WebStorm 不会“猜”你在用 App Router 还是 Pages Router,也不会自动补全 GetServerSideProps 参数类型。
实操建议:
- 确认根目录有
tsconfig.json,且包含"extends": "next/env"(Next.js 13.4+ 推荐),或至少有"types": ["next"] - 若用了
paths别名(如@/components),必须配"baseUrl": "."和完整"paths",否则 WebStorm 跳转、自动导入全部失灵 -
getServerSideProps等函数需显式 import 类型:import { GetServerSideProps } from 'next',不能只靠全局声明 - 改完
tsconfig.json后,点 WebStorm 右上角TypeScript Language Service→Restart TypeScript Service,否则缓存不刷新,类型还是红的
断点进不去 getServerSideProps 或服务端 fetch
根本原因不是断点位置不对,而是 WebStorm 没连上真正的 Node.js 服务端进程——Next.js 的 SSR 逻辑只在 Node 进程中执行,浏览器 DevTools 或 JavaScript Debug 配置完全无效。
将一个或多个视频上传至YouTube。当用户想“上传到YouTube”“发YouTube”“批量上传”“upload to YouTube”“post videos to YouTube”或发布到YouTube时使用此技能。
实操建议:
- 启动命令必须加
--inspect:比如npx next dev --inspect=0.0.0.0:9229(Mac/Linux)或--inspect=127.0.0.1:9229(Windows) - 在 WebStorm 中不新建
Node.js配置,而是用Run → Attach to Node.js/Chrome:Host 填localhost,Port 填你指定的端口(如9229),并勾选Auto-reconnect - 断点只能打在服务端可执行文件里:
pages/*.tsx或app/*中的getServerSideProps、generateStaticParams、带cache: 'no-store'的fetch调用处;"use client"文件里的代码永远不触发 SSR 断点 - 左下角没显示
Connected to V8?说明没连上——先用lsof -i :9229(Mac/Linux)或netstat -ano | findstr :9229(Windows)确认端口是否真在监听
热更新(HMR)不触发,改了 page.tsx 页面没反应
WebStorm 自身不控制 HMR,它只是启动器和文件监听代理。真正决定是否刷新的是 Next.js 的文件监听机制 + WebStorm 是否把变更正确同步给了进程。
实操建议:
- 确保
package.json里有标准"dev": "next dev"脚本,并用 WebStorm 的NPM类型 Run Configuration 启动(不是 JavaScript Debug) - 禁用 WebStorm 的
Safe write:Settings → Appearance & Behavior → System Settings → 去掉Use "safe write"勾选,否则临时文件写入会干扰 Next.js 的 fs.watch - 如果用 pnpm,WebStorm 默认不识别
.pnpm符号链接结构,需在 Settings → Node.js and NPM → Package manager 明确设为pnpm - 改完代码后,观察终端输出是否有
[event] build page: /xxx日志——没有则说明文件变更根本没被监听到,大概率是Safe write或目录标记问题(右键根目录 →Mark Directory as → Sources Root)
最常被忽略的一点:WebStorm 的 TypeScript 服务重启、V8 调试连接、Safe write 开关,这三者任何一个没调对,都会让整个开发流断裂——它们不报错,但就是不动。

















