Ошибка Failed to load url /src/main.jsx в Vite React: причины и исправление

    При запуске нового проекта Vite + React на Windows разработчики часто сталкиваются с ошибкой [vite] Pre-transform error: Failed to load url /src/main.jsx. Эта проблема возникает даже при наличии файла main.jsx в папке src и корректном импорте в index.html. В статье разберём основные причины сбоя и пошаговые методы решения.

    Почему Vite не видит main.jsx?

    Ошибка Failed to load url /src/main.jsx указывает, что Vite не может найти или преобразовать точку входа. Наиболее частые причины:

    • Длинный путь к проекту - Windows имеет ограничение на длину пути (260 символов). Если вложенность папок большая, Vite может не загрузить модуль.
    • Повреждённый кэш Vite - после повторных созданий проекта в той же директории остаются старые ссылки.
    • Конфликт версий зависимостей - устаревшие или несовместимые пакеты vite и @vitejs/plugin-react.
    • Проблемы с правами доступа - антивирус или система блокирует чтение файла.

    Как исправить ошибку Failed to load url /src/main.jsx

    1. Проверьте путь к проекту

    Сократите путь до минимума. Например, разместите проект в корне диска: Z:\myapp. Убедитесь, что общая длина пути не превышает 150-200 символов.

    2. Полностью очистите кэш Vite и node_modules

    Выполните в терминале:

    rm -rf node_modules package-lock.json
    npm cache clean --force
    npm install

    После этого удалите папку node_modules/.vite вручную, если она осталась.

    3. Пересоздайте проект с нуля

    Используйте команду:

    npm create vite@latest my-app -- --template react

    Не копируйте старые файлы конфигурации - это может привнести битые ссылки.

    4. Обновите Node.js и npm

    Установите последнюю LTS-версию Node.js (рекомендуется 18.x или 20.x). Проверьте версии:

    node -v
    npm -v

    5. Отключите антивирус или добавьте исключение

    Некоторые антивирусы (например, Kaspersky, Windows Defender) блокируют чтение файлов в папках node_modules. Временно отключите защиту в реальном времени или добавьте папку проекта в исключения.

    Дополнительные советы для Windows

    Если проблема повторяется, попробуйте:

    • Запустить терминал от имени администратора.
    • Использовать WSL (Windows Subsystem for Linux) - там нет ограничения на длину пути.
    • Проверить, не конфликтует ли файл vite.config.js - временно переименуйте его и проверьте запуск.

    В редких случаях помогает перезагрузка компьютера, так как некоторые процессы могут удерживать блокировку на файлы.

    Профилактика ошибки в будущем

    Чтобы избежать повторения сбоя, соблюдайте правила:

    • Создавайте проекты в коротких путях (например, C:\projects\myapp).
    • Регулярно обновляйте шаблон Vite через npm update.
    • Не перемещайте проект после его инициализации - лучше создайте заново.

    Часто задаваемые вопросы