3.9 KiB
3.9 KiB
🚀 Скрипты для перезапуска Web приложения
📋 Обзор
Созданы два скрипта для удобного перезапуска Flutter Web приложения:
restart_web.sh- Полная пересборка с очисткой кэшаquick_restart.sh- Быстрый перезапуск без пересборки
🔧 Использование
Полная пересборка (рекомендуется после изменений кода)
# Использование с параметрами по умолчанию
./restart_web.sh
# С указанием hostname и port
./restart_web.sh 192.168.31.142 8080
# С другим hostname
./restart_web.sh localhost 8080
Что делает:
- 🛑 Останавливает процесс на порту
- 🧹 Очищает кэш Flutter (
flutter clean) - 📦 Получает зависимости (
flutter pub get) - 🔨 Пересобирает приложение (
flutter build web --release) - 🚀 Запускает на указанном адресе
Быстрый перезапуск (для тестирования)
# Использование с параметрами по умолчанию
./quick_restart.sh
# С указанием hostname и port
./quick_restart.sh 192.168.31.142 8080
Что делает:
- 🛑 Останавливает процесс на порту
- 🚀 Быстро запускает приложение
📊 Сравнение скриптов
| Функция | restart_web.sh |
quick_restart.sh |
|---|---|---|
| Время выполнения | ~2-3 минуты | ~30 секунд |
| Очистка кэша | ✅ | ❌ |
| Пересборка | ✅ | ❌ |
| Получение зависимостей | ✅ | ❌ |
| Рекомендуется для | Изменения кода | Тестирование |
🎯 Параметры по умолчанию
- Hostname:
192.168.31.142 - Port:
8080
🛠️ Ручное управление
Остановка приложения
lsof -ti:8080 | xargs kill -9
Проверка статуса порта
lsof -i:8080
Запуск вручную
flutter run -d web-server --web-hostname 192.168.31.142 --web-port 8080
🔍 Отладка
Если скрипт не работает:
- Проверьте, что вы в директории
apps/web_app1 - Убедитесь, что файл
pubspec.yamlсуществует - Проверьте права на выполнение:
ls -la *.sh
Если порт занят:
# Найти процесс
lsof -i:8080
# Остановить процесс
lsof -ti:8080 | xargs kill -9
📝 Примеры использования
Разработка
# После изменения кода
./restart_web.sh
# Для быстрого тестирования
./quick_restart.sh
Продакшн
# Полная пересборка для продакшна
./restart_web.sh 192.168.31.142 8080
Локальная разработка
# Запуск на localhost
./quick_restart.sh localhost 8080
🎉 Результат
После выполнения скрипта приложение будет доступно по адресу:
- http://192.168.31.142:8080 (по умолчанию)
- http://localhost:8080 (если указан localhost)
Приложение использует новую архитектуру с:
- ✅
BridgeManagerдля управления bridge - ✅
WebTransportдля инкапсуляции транспорта - ✅ Абстрактный транспортный слой
- ✅ Высокоуровневый API для payload'ов