Laravel 9集成Bootstrap 5 Auth失败:npm run dev执行报错求助
问题背景
环境:Windows 10、PHP v8.1.6、Node.js v18.12.1、npm v9.1.3
执行步骤:
composer create-project laravel/laravel testcomposer require laravel/uiphp artisan ui bootstrap --authnpm install- 执行
npm run dev时触发错误:
failed to load config from C:\Dropbox#Work#Development\www\test\vite.config.js
error when starting dev server: Error: cannot test case insensitive FS, CLIENT_ENTRY does not point to an existing file: C:\dist\client\client.mjs
at testCaseInsensitiveFS (C:\Dropbox#Work#Development\www\test\node_modules\vite\dist\node-cjs\publicUtils.cjs:3432:15)
at Object.(C:\Dropbox#Work#Development\www\test\node_modules\vite\dist\node-cjs\publicUtils.cjs:3437:1)
at Module._compile (node:internal/modules/cjs/loader:1159:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
at _require.extensions.[as .js] (file:///C:/Dropbox/%23Work/%23Development/www/test/node_modules/vite/dist/node/chunks/dep-67e7f8ab.js:62854:17)
at Module.load (node:internal/modules/cjs/loader:1037:32)
at Module._load (node:internal/modules/cjs/loader:878:12)
at Module.require (node:internal/modules/cjs/loader:1061:19)
at require (node:internal/modules/cjs/helpers:103:18)
at Object.(C:\Dropbox#Work#Development\www\test\node_modules\vite\index.cjs:7:31)
原因分析
- 路径特殊字符干扰:项目路径包含
#符号,Windows环境下Vite对含特殊字符的路径解析存在bug,导致无法正确定位客户端入口文件。 - 工具兼容性问题:Laravel 9默认使用Vite作为构建工具,
laravel/ui生成的配置未完全适配Vite的路径规则,加剧了路径解析异常。
解决步骤
方案1:修改项目路径(优先推荐)
将项目迁移至不含特殊字符(#、空格等)的路径下,例如:
- 原路径:
C:\Dropbox#Work#Development\www\test - 修改为:
C:\Dropbox\Work\Development\www\test
迁移完成后重新执行:
npm install npm run dev
方案2:调整Vite配置
若无法移动项目,修改项目根目录的vite.config.js,明确指定入口文件路径:
import { defineConfig } from 'vite'; import laravel from 'laravel-vite-plugin'; export default defineConfig({ plugins: [ laravel({ input: [ 'resources/css/app.css', 'resources/js/app.js', ], refresh: true, }), ], resolve: { preserveSymlinks: true, }, });
随后清理旧依赖并重新安装:
rm -rf node_modules package-lock.json npm install npm run dev
方案3:降级Node.js版本
Windows环境下Node.js 18.x与Vite存在部分兼容性问题,可尝试降级至Node.js 16.x LTS版本,再重新执行依赖安装和构建命令。
内容的提问来源于stack exchange,提问作者Fabio

