Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
 
115 / 100 / 52
Регистрация: 14.09.2011
Сообщений: 681
Записей в блоге: 1
1

Обновление java app

09.02.2016, 16:07. Просмотров 373. Ответов 4
Метки нет (Все метки)


Ситуация следующая
есть программа в jar для windows, linux, macos
, в ней библиотеки имеются, при обновлении программы, качает jar и запускает.
Необходимо сделать систему обновления.
цель: уменьшить отдачу трафика от сервера.
Может кто-то поделится опытом.
У меня пока простая идея, написать утилиту, которая будет отслеживать изменения версии на сервере, и потом обновлять все файлы и перезапускать.

или создать утилу для запуска и обновления библиотек и потом запускать с добавлением в класспасс библиотек.

Может кто-то знает другие решения или поделится соображениями?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.02.2016, 16:07
Ответы с готовыми решениями:

Java App Mac App Store/ Windows Store
Всем привет! У меня есть вопрос на который я не в состоянии сам найти ответ. У меня есть веб...

Web-app Java Tomcat
Доброго времени суток. Не уверен что пишу в соответствующий раздел, но все же Имеется веб...

Запуск web app java из Eclipse
При попытке компиляции пытается найти hibernate.config.out.xml - хотя настройки hibernate в файле...

Деплой java web app + mysql
Здравствуйте. Подскажите как задеплоить простое веб приложение на бесплатный хостинг, уже сколько...

4
50 / 49 / 25
Регистрация: 05.02.2016
Сообщений: 146
09.02.2016, 21:17 2
Я делал так:

1. Приложение смотрит на сервере информацию о новой версии. Если есть, предлагает обновиться.
2. Качает zip с новой версией.
3. Распаковывает содержимое в папку update.
4. Запускает новое-себя в папке update и само завершается.
5. Новое-приложение-в-папке-update понимает, что оно в папке update, копирует себя вместо старой версии в обычной папке, показывает окошко "что нового", запускает себя-в-обычной-папке и завершается.
6. Обновленное приложение, запустившись (и понимая, что оно в обычном месте), работает как обычно.

Нужно только следить, чтобы приложения нормально завершались, освобождая ресурсы.
Все работает. Хотел даже библиотечку накатать, т.к. дело необходимое довольно часто.
0
115 / 100 / 52
Регистрация: 14.09.2011
Сообщений: 681
Записей в блоге: 1
09.02.2016, 21:21  [ТС] 3
оно то понятно)
но проблема вот в чем
цель: уменьшить отдачу трафика от сервера.
есть библиотеки, которые имеют вес.
0
50 / 49 / 25
Регистрация: 05.02.2016
Сообщений: 146
09.02.2016, 23:27 4
Ну так можно же не все складывать в zip.
Клиент говорит серверу, что хочет обновиться, сервер спрашивает у клиента его текущую версию (не у всех же предпоследняя) и на основании этого собирает zip, содержащий только нужные файлики. Можно еще в этот zip положить описание что куда копировать и что вообще потереть.
А как сервер будет собирать апдейт.zip для конкретного клиента - это задача по-интереснее
0
Эксперт Java
2361 / 2191 / 558
Регистрация: 28.12.2010
Сообщений: 8,577
10.02.2016, 00:45 5
Цитата Сообщение от snajper_ro Посмотреть сообщение
цель: уменьшить отдачу трафика от сервера.
делайте программу модульной и каждому модулю задавайте версию. На старте программы, сверяйтесь со списком модулей и версий на сервере. Если есть апдейты, тяните только те либы которые нужны. При правильном подходе можно даже без рестарта программы обновлять (плагин архитектура)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.02.2016, 00:45

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Java Web App best practices. Поделитесь опытом
Добрый день. Интенсивно осваиваю web-разработку на java. Не хотелось бы проходить уже истоптанный...

Проблемы с кодировкой при БД - Java app - Почтовый сервер
Получаю из базы MsSql строку и пытаюсь ее отправить по почте как сообщение. Общение с почтовым...

Обновление app.config
День добрый. Появилось необходимость разобраться с WCF. Необходимо реализовать сервис с...

Обновление приложения Android In App Update
Доброго времени суток ! Делаю обновление приложения по документации Google...

Клиент -android, сервер -java app
Здравствуйте, помогите пожалуйста! Есть Клиент под андроид и сервер на java на pc - когда...

VS 2008, C#: 1 Error. Constructor on type 'App.App.Forms.FormBase' not found. в FormDerived [Design]
и это после того, как добавил в котструктор базовой формы параметр. теперь в design только ее и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.