
Electron JS позволяет создавать кроссплатформенные настольные приложения с использованием веб-технологий: HTML, CSS и JavaScript. Для распространения приложения на Windows требуется собрать его в формат exe, который можно запускать без установки Node.js и других зависимостей.
Процесс компиляции начинается с подготовки проекта: важно убедиться, что главный файл приложения корректно указан в package.json, а все зависимости установлены локально. Неправильные пути к модулям или отсутствие devDependencies могут вызвать ошибки при сборке.
Для создания exe чаще всего используют инструменты electron-packager или electron-builder. Первый подходит для быстрой упаковки, второй позволяет дополнительно настраивать установщик, иконки и подпись кода. Выбор инструмента зависит от требований к установочному файлу и распространению приложения.
Важно заранее определить параметры сборки: архитектура процессора (x64, ia32), версия Windows, включение дополнительных файлов и ресурсов. Неправильная конфигурация может привести к некорректной работе приложения после компиляции.
Подготовка проекта Electron для сборки

Первый шаг перед компиляцией – проверить структуру проекта. Все исходные файлы должны находиться в одной директории, предпочтительно в папке src, а ресурсы (иконки, изображения, шрифты) – в отдельной папке, доступной по относительным путям.
Убедитесь, что в package.json корректно указан ключ «main», указывающий на главный JavaScript-файл приложения. Этот файл отвечает за создание окна и инициализацию Electron. Ошибки в пути или опечатки приведут к сбою сборки.
Удалите неиспользуемые зависимости и модули. Для этого выполните npm prune и проверьте, что все зависимости из dependencies действительно нужны в рабочем приложении. DevDependencies не включаются в exe, но их наличие может влиять на сборку.
Настройте файл .gitignore или electronignore, чтобы исключить лишние папки (node_modules, тесты, временные файлы) из пакета. Это уменьшит размер exe и предотвратит попадание ненужных файлов в сборку.
Проверьте совместимость кода с выбранной версией Electron. Использование устаревших API или модулей, не поддерживаемых в текущей версии, вызывает ошибки при упаковке. Рекомендуется запускать приложение локально через npm start перед компиляцией.
Настройка package.json и указание main-файла

Файл package.json определяет структуру и поведение приложения при сборке. Ключевой параметр – «main», который указывает на главный скрипт запуска. Путь должен быть относительным к корню проекта и вести на существующий файл, например:
| Параметр | Пример | Описание |
|---|---|---|
| «main» | «main.js» | Главный файл, создающий окно приложения и управляющий процессами Electron |
| «name» | «my-app» | Уникальное имя проекта для сборки и установки |
| «version» | «1.0.0» | Текущая версия приложения, используется установщиком |
| «dependencies» | {«electron»: «^26.0.0»} | Список модулей, необходимых для работы приложения |
Если главный файл расположен в подпапке, путь указывается с учетом структуры, например: «main»: «src/main.js». После изменения package.json рекомендуется выполнить npm install и проверить запуск приложения через npm start.
Дополнительно можно указать скрипты сборки, которые будут использоваться инструментом упаковки. Например, для electron-builder:
| Скрипт | Команда |
|---|---|
| «build» | «electron-builder» |
| «start» | «electron .» |
Правильная настройка package.json обеспечивает корректную работу сборочного инструмента и предотвращает ошибки при создании exe файла.
Выбор инструмента для сборки в exe (electron-packager, electron-builder)

electron-packager позволяет быстро упаковать проект в исполняемый файл без создания установщика. Для сборки достаточно указать имя приложения, платформу и архитектуру, например: electron-packager . MyApp —platform=win32 —arch=x64. Этот инструмент подходит для тестирования и распространения портативных версий.
electron-builder используется для создания полноценных установщиков и подписанных exe файлов. Он поддерживает автоматическую генерацию установочных пакетов (.exe, .msi), настройку иконок, а также интеграцию с автообновлением. Настройка происходит через секцию «build» в package.json или отдельный файл конфигурации.
Для выбора инструмента учитывайте следующие факторы: необходимость установщика, поддержку подписи кода, размер конечного exe, простоту конфигурации и интеграцию с CI/CD. Для простых портативных сборок достаточно electron-packager, для коммерческих релизов и автоматических обновлений лучше использовать electron-builder.
Перед окончательной сборкой рекомендуется протестировать оба инструмента на небольшом проекте, чтобы определить удобство настройки и скорость сборки под конкретные требования.
Конфигурация параметров сборки и иконок

При настройке сборки важно указать платформу (win32), архитектуру (x64 или ia32) и путь к главному файлу приложения. Для electron-packager это выглядит как electron-packager . MyApp —platform=win32 —arch=x64 —overwrite, где —overwrite позволяет перезаписать предыдущие сборки.
Для electron-builder конфигурация параметров выполняется через секцию «build» в package.json. Основные ключи включают appId для уникального идентификатора приложения, directories.output для указания папки сборки и files для выбора включаемых файлов.
Иконки должны быть в формате .ico для Windows и иметь несколько размеров (16×16, 32×32, 48×48, 256×256) для корректного отображения в проводнике и на панели задач. Для electron-builder путь к иконке указывается через icon, например: «icon»: «build/icons/app.ico». Для electron-packager используется ключ —icon=build/icons/app.ico.
Рекомендуется тестировать сборку с выбранными параметрами на чистой Windows-среде, чтобы проверить корректность иконок, запуск приложения и отсутствие отсутствующих файлов или ресурсов.
Создание exe файла и проверка на Windows

После настройки проекта и выбора инструмента можно приступить к созданию exe файла. Для electron-packager команда выглядит так:
- electron-packager . MyApp —platform=win32 —arch=x64 —icon=build/icons/app.ico —overwrite
Для electron-builder достаточно выполнить:
- npm run build, если в package.json задан скрипт «build»: «electron-builder»
После генерации файла рекомендуется проверить его работу на Windows:
- Запустить exe напрямую, убедиться, что окно приложения открывается без ошибок.
- Проверить корректное отображение иконок на панели задач и в проводнике.
- Убедиться, что все ресурсы (изображения, шрифты, файлы конфигурации) доступны и загружаются корректно.
- Проверить запуск на чистой системе без установленного Node.js, чтобы убедиться в автономности exe.
- При использовании electron-builder протестировать установщик, убедиться в правильном создании ярлыков и папки установки.
Такая последовательная проверка позволяет выявить ошибки на ранней стадии и гарантировать корректную работу приложения после распространения.
Решение ошибок и отладка при компиляции

Ошибки при сборке exe чаще всего связаны с неправильными путями, отсутствием зависимостей или конфликтами версий Electron. Для выявления проблем используйте ключ —verbose в electron-packager или включите debug в electron-builder, чтобы получить подробный лог процесса.
Проверяйте консоль на сообщения об отсутствующих файлах, модулях или ресурсах. Если ошибка указывает на конкретный модуль, убедитесь, что он установлен в dependencies и доступен по правильному пути.
Конфликты версий решаются через явное указание версий Electron и зависимостей в package.json. Для обновления используйте npm install electron@<версия> и удалите старые node_modules.
Проблемы с иконками или ресурсами возникают при неправильных путях или несоответствующем формате файлов. Убедитесь, что иконки в формате .ico и соответствуют стандартным размерам, а все ресурсы включены через files или .electronignore.
Если exe не запускается на чистой системе, проверьте отсутствие динамических зависимостей от Node.js и убедитесь, что все нативные модули правильно собраны для целевой платформы через electron-rebuild.
Регулярное тестирование промежуточных сборок и внимательное чтение логов позволяет локализовать ошибки и исправить их до финального релиза.
Вопрос-ответ:
Какие шаги необходимы для подготовки проекта Electron перед сборкой в exe?
Необходимо проверить структуру проекта, убедиться, что главный файл указан в package.json, удалить лишние зависимости и настроить .electronignore для исключения ненужных файлов из сборки. Также стоит протестировать проект локально через npm start.
Чем отличаются electron-packager и electron-builder при создании exe файлов?
Electron-packager быстро упаковывает приложение в портативный exe без установщика. Electron-builder позволяет создавать полноценные установочные пакеты, добавлять подпись кода, генерировать ярлыки и поддерживает автообновления.
Какие параметры важно указать при сборке exe для Windows?
Следует указать платформу (win32), архитектуру (x64 или ia32), путь к главному файлу, включить необходимые ресурсы и указать иконку в формате .ico с разными размерами для корректного отображения на панели задач и в проводнике.
Как проверить корректность скомпилированного exe файла?
Запустить exe на Windows, убедиться, что приложение открывается без ошибок, проверить доступность всех ресурсов и корректное отображение иконок. Для установщиков electron-builder проверить создание ярлыков, путь установки и запуск на чистой системе без Node.js.
Что делать, если при сборке возникают ошибки о недостающих модулях или зависимостях?
Необходимо проверить package.json, убедиться, что все нужные модули указаны в dependencies. Выполнить npm install, удалить node_modules и, при необходимости, использовать electron-rebuild для сборки нативных модулей под конкретную платформу.
