Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
 Аватар для snajper_ro
116 / 101 / 52
Регистрация: 14.09.2011
Сообщений: 696
Записей в блоге: 1

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

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

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

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

Может кто-то знает другие решения или поделится соображениями?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.02.2016, 16:07
Ответы с готовыми решениями:

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

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

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

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

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

Нужно только следить, чтобы приложения нормально завершались, освобождая ресурсы.
Все работает. Хотел даже библиотечку накатать, т.к. дело необходимое довольно часто.
0
 Аватар для snajper_ro
116 / 101 / 52
Регистрация: 14.09.2011
Сообщений: 696
Записей в блоге: 1
09.02.2016, 21:21  [ТС]
оно то понятно)
но проблема вот в чем
цель: уменьшить отдачу трафика от сервера.
есть библиотеки, которые имеют вес.
0
50 / 49 / 25
Регистрация: 05.02.2016
Сообщений: 146
09.02.2016, 23:27
Ну так можно же не все складывать в zip.
Клиент говорит серверу, что хочет обновиться, сервер спрашивает у клиента его текущую версию (не у всех же предпоследняя) и на основании этого собирает zip, содержащий только нужные файлики. Можно еще в этот zip положить описание что куда копировать и что вообще потереть.
А как сервер будет собирать апдейт.zip для конкретного клиента - это задача по-интереснее
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
10.02.2016, 00:45
Цитата Сообщение от snajper_ro Посмотреть сообщение
цель: уменьшить отдачу трафика от сервера.
делайте программу модульной и каждому модулю задавайте версию. На старте программы, сверяйтесь со списком модулей и версий на сервере. Если есть апдейты, тяните только те либы которые нужны. При правильном подходе можно даже без рестарта программы обновлять (плагин архитектура)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.02.2016, 00:45
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru