SvelteKit执行npm run build报错Not found: / 求助
解决SvelteKit旧版本构建时Error: Not found: /的问题
针对你遇到的旧版SvelteKit(@sveltejs/kit@1.0.0-next.314)构建报错问题,以下是针对性的解决步骤:
1. 恢复错误的Vite配置
你修改后的vite.config.js中添加了build.lib配置,这是用于构建类库的设置,完全不适用于SvelteKit应用构建,会干扰框架的路由和入口逻辑。先恢复到原始配置:
// vite.config.js import { sveltekit } from '@sveltejs/kit/vite'; /** @type {import('vite').UserConfig} */ const config = { plugins: [sveltekit()] }; export default config;
2. 检查核心路由文件
确认项目中src/routes/index.svelte文件存在且未被误删、重命名或移动路径——这是SvelteKit默认的根路由入口,缺失会直接导致Not found: /错误。
3. 检查SvelteKit适配器配置
你安装了多个适配器(adapter-auto、adapter-static、adapter-node),但未提供svelte.config.js配置文件。旧版SvelteKit必须在该文件中指定使用的适配器,否则可能导致构建时路由解析失败。
创建或修改svelte.config.js(如果不存在的话),根据你需要部署的目标选择对应适配器,比如静态部署用adapter-static:
// svelte.config.js import adapter from '@sveltejs/adapter-static'; import preprocess from 'svelte-preprocess'; /** @type {import('@sveltejs/kit').Config} */ const config = { preprocess: preprocess(), kit: { adapter: adapter({ // 静态部署SPA模式需配置fallback fallback: 'index.html' }) } }; export default config;
如果是Node.js部署则替换为adapter-node:
import adapter from '@sveltejs/adapter-node';
4. 清理构建缓存并重新安装依赖
旧版SvelteKit的缓存文件可能导致异常,执行以下命令清理后重新构建:
rm -rf node_modules .svelte-kit dist npm install npm run build
5. 验证路由规则是否符合旧版规范
确认src/routes目录下的文件结构符合该版本SvelteKit的路由规则:
- 根路由必须是
index.svelte - 子路由对应目录下的
index.svelte或同名文件 - 避免使用与框架冲突的文件名或目录结构
内容的提问来源于stack exchange,提问作者Chetan Bawankule
相关产品推荐
相关产品推荐

