powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Большой размер war файлов
90 сообщений из 90, показаны все 4 страниц
Большой размер war файлов
    #39762824
Molasar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

Сделал на Spring Boot 2.1.2 простейшее Web приложение с 1-м @Controller классом и одним @GetMapping("/"), выводящим html страницу.
Размер War файла - 19Мб

Как можно уменьшить размер War файла?
Если сделать на Java EE такое же простейшее приложение, размер будет меньше/больше?

С большими проектами размер war файла не будет расти с арифметической прогрессией?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762828
сезонатор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MolasarС большими проектами размер war файла не будет расти с арифметической прогрессией?Если Вы добавите ещё один контроллер, то размер war-файла не станет равным 38МБ. Вы можете проверить это сами.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762829
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molasar,

а ты посмотрел, что находится в war?
как минимум библиотеки можно исключить.
но для этого они должны находиться где положено.
MolasarС большими проектами размер war файла не будет расти с арифметической прогрессией?как правило либы используются многократно, поэтому прогрессии не будет
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762846
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molasar,
Что за вопрос странный. Это zip архив. Что там внутри большое конкретнее)))) LOL
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762853
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Molasar,
Что за вопрос странный. Это zip архив. Что там внутри большое конкретнее)))) LOL
<artifactId>spring-boot-maven-plugin</artifactId> внутри секции build.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762854
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MolasarКак можно уменьшить размер War файла?

Использовать exclusions совместно с maven.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762870
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molasar,

посмотри что находится в .war\WEB-INF\lib\
все либы
"всё своё ношу с собой"
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762875
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molasar,

там внутри какой-нибудь сервер, типа Jetty, упакорван.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762880
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы не даете автору даже посмотреть размеры файлов внутри.
Пусть работает.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762928
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MolasarКак можно уменьшить размер War файла?
Если сделать на Java EE такое же простейшее приложение, размер будет меньше/больше?

- в порядке развлечения, на днях, делал SpringBoot проект (~50Мб) и аналогичный на JavaEE (~10Мб). Собственно тут все просто - сервер приложений уже содержит все необходимые имплементации JavaEE.

- можно и SpringBoot приложение уменьшить, оно тянет много лишнего. Если проект под maven, то exclusion Вам поможет. Например чтобы не тянуть embedded Tomcat в свое приложение и т п.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39762943
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MolasarВсем привет!

Сделал на Spring Boot 2.1.2 простейшее Web приложение с 1-м @Controller классом и одним @GetMapping("/"), выводящим html страницу.
Размер War файла - 19Мб

Как можно уменьшить размер War файла?
Если сделать на Java EE такое же простейшее приложение, размер будет меньше/больше?

С большими проектами размер war файла не будет расти с арифметической прогрессией?
19 mb это очень мало для современного энтерпрайза.

А какой у тебя сборщик? mvn? gradle?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763069
Sergunka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GarrickMolasar,

там внутри какой-нибудь сервер, типа Jetty, упакорван.

Jetty надо спецом покавать, там по умолчанию Томкет.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763073
Sergunka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonMolasarВсем привет!

Сделал на Spring Boot 2.1.2 простейшее Web приложение с 1-м @Controller классом и одним @GetMapping("/"), выводящим html страницу.
Размер War файла - 19Мб

Как можно уменьшить размер War файла?
Если сделать на Java EE такое же простейшее приложение, размер будет меньше/больше?

С большими проектами размер war файла не будет расти с арифметической прогрессией?
19 mb это очень мало для современного энтерпрайза.

А какой у тебя сборщик? mvn? gradle?

У нас в облаке под развертку просит 380МБ если надо тысячу нодов загрузить довольно накладно - приходится на Го переписывать только из-за памяти.

Видимо ТС требуется так и не доучив яву начать учить Го
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763081
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На AWS lambda есть ограничения в 128 Мь на артифакт.

Кстати половина проблем фиксятся если внимательно смотреть mvn dependency:tree. Что включается?
Почему? Какие зависимости тянутся? Нужны они или нет?

Я как-то затянул aws-sdk хотя мне надо было отдельно взять aws-s3, aws-lambda e.t.c. Вобще внимательно
смотрите что включается.

Для gradle тоже есть плагин зависимостей. Ну... был вроде.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763087
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
один и тот же проект собранный ant - 35м , maven - 65м
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763148
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чем отличается состав артефактов?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763187
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

был проект созданный в NB "стандартным способом" сборки ant
потом просто преобразован в в сборку maven
разница в составе папки lib.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763191
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonА чем отличается состав артефактов?Отличается скорее всего выкидыванием NCDF и CNF
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763196
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Molasar, а можно pom файл(в очередной раз - вопрос без pom файла не имеет смысла)?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763198
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmayton,

был проект созданный в NB "стандартным способом" сборки ant
потом просто преобразован в в сборку maven
разница в составе папки lib.

хотел бы я глянуть на это "преобразование".
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763227
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинхотел бы я глянуть на это "преобразование".создан проект maven и просто скопированы все файлы из проекта ant в среде NB.
ну и исправлены ошибки в pom по мере возникающие в процессе компиляции.
коды проекта без изменения
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763238
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сезонаторMolasarС большими проектами размер war файла не будет расти с арифметической прогрессией?Если Вы добавите ещё один контроллер, то размер war-файла не станет равным 38МБ. Вы можете проверить это сами.
Возьмусь написать контроллер размером 19 мб!
Оплата сдельная - 1 мб = 10 к.руб :)
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763252
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяОзверинхотел бы я глянуть на это "преобразование".создан проект maven и просто скопированы все файлы из проекта ant в среде NB.
ну и исправлены ошибки в pom по мере возникающие в процессе компиляции.
коды проекта без изменения
Ты когда нибудь запускал своё приложение с ключиком verbose:class ?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763257
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonТы когда нибудь запускал своё приложение с ключиком verbose:class ?нет
а смысл?
мне нужен war для деплоя в линуксах
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763281
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmaytonТы когда нибудь запускал своё приложение с ключиком verbose:class ?нет
а смысл?
мне нужен war для деплоя в линуксах

может это Алиса?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763289
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинможет это Алиса????
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763316
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmaytonТы когда нибудь запускал своё приложение с ключиком verbose:class ?нет
а смысл?
мне нужен war для деплоя в линуксах
War содержит jar-ники (обычно) и твои собственные .class files.
Если jar-ники распаковать и посмотреть - там будет много шлака.
Из того что в твоём коде может и не используется. Но входит
в артифакт просто потому что владелец этого артифакта так захотел.

Можно зачистить jar-ники удалив ненужное и тогда счастливый Molasar
получит вместо 10М вместо 19 а то и того меньше.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763334
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Не дело прикладного прогера этим заниматься... Если либы из внешнего репо.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763335
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как будет угодно.

Впрочем... глубину участия в разработке других либ каждый сам для себя определяет самостоятельно.
Мои коллеги коммитили в Camel, Hibernate репки. Тоесть... как-бы проявляли большее участие
в life-cycle смежных фреймворков и библиотек.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763338
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЕсли jar-ники распаковать и посмотреть - там будет много шлака.
Из того что в твоём коде может и не используется. Но входит
в артифакт просто потому что владелец этого артифакта так захотел.куча лишнего в наборе библиотек
в NB в папке Dependencies ручками Exclude Dependency методом проб и ошибок исключил лишнее
war стал 26 мег


Andy_OLAPИспользовать exclusions совместно с maven.
прав
но как это автоматизировать?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763351
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть dependency явные. Это зависимости меж-библиотек и то что прописано в imports.

Есть зависимости которые появляются в рантайме. Это к примеру jdbc дрова. Плагины.
И протрекать последние - сложно. Нужно прогнать все кейcы приложения.
Я поэтому и писал про verbose:class.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763354
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЕсть зависимости которые появляются в рантайме. Это к примеру jdbc дрова. Плагины.
И протрекать последние - сложно. Нужно прогнать все кейcы приложения.
Я поэтому и писал про verbose:class.ну NB контролирует зависимости и импорты.
видимо maven перестраховывается и добавляет всё...
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763358
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как он это контролирует?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763366
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonКак он это контролирует?видимо проверяет цепочки вызовов
пока не добавишь jar-либу будет показывать ошибку.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763368
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мы-же говорим про фазу runtime?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763383
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonМы-же говорим про фазу runtime?NB это контролирует на фазе написания кода, и пока проблем с эти в фазе рантайма не было.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763414
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да по фазе написания у меня нет вопросов.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763428
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonДа по фазе написания у меня нет вопросов.тогда я не понял.....
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763515
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergunkaУ нас в облаке под развертку просит 380МБ если надо тысячу нодов загрузить довольно накладно - приходится на Го переписывать только из-за памяти.
Ну вот, логичный результат поигрушек в программистов. Сначала накуролесили на 380 мб непойми чего (большая часть абсолютно не нужна), а потом из-за надоевшего собственного сэкспериментирования решили заняться "сексом по новому". Ну так в новом сексе опять миллион ненужных запчастей будет, проблема очень быстро повторится.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763523
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555SergunkaУ нас в облаке под развертку просит 380МБ если надо тысячу нодов загрузить довольно накладно - приходится на Го переписывать только из-за памяти.
Ну вот, логичный результат поигрушек в программистов. Сначала накуролесили на 380 мб непойми чего (большая часть абсолютно не нужна), а потом из-за надоевшего собственного сэкспериментирования решили заняться "сексом по новому". Ну так в новом сексе опять миллион ненужных запчастей будет, проблема очень быстро повторится.
Я согласен с сарказмом. Но корень этой проблемы растет из неограниченности размера war/jar артифакта.
И кстати он не связан 1:1 с потребляемой памятью.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763560
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНо корень этой проблемы растет из неограниченности размера war/jar артифактаВы путаете причину и следствие.
Причина - неуправляемые (по факту) зависимости.
Следствие - точно такой же рост размера артефактов.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763598
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovПричина - неуправляемые (по факту) зависимости.
Следствие - точно такой же рост размера артефактов+100
как избежать этого?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763607
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Артефакт org.hibernate:hibernate-core:5.4.1.Final имеет зависимости описанные здесь.

http://central.maven.org/maven2/org/hibernate/hibernate-core/5.4.1.Final/hibernate-core-5.4.1.Final.pom

Их описал человек. Что здесь - неуправляемое?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763610
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonИх описал человек. Что здесь - неуправляемое?Человеческий фактор.
Вы делегировали "кому-то другому" работу, которую должны делать вы. Ну или кто-то из вашей команды.
Да, взамен вы получили разные плюшки вида "об этом не надо думать" и "оно всё само", но важно понимать, чем именно вы заплатите за эту "лёгкость".
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763617
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovmaytonИх описал человек. Что здесь - неуправляемое?Человеческий фактор.
Вы делегировали "кому-то другому" работу, которую должны делать вы. Ну или кто-то из вашей команды.
Да, взамен вы получили разные плюшки вида "об этом не надо думать" и "оно всё само", но важно понимать, чем именно вы заплатите за эту "лёгкость".

Код: xml
1.
dependencyManagement 



Вроде как работает более или менее.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763620
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovmaytonИх описал человек. Что здесь - неуправляемое?Человеческий фактор.
Вы делегировали "кому-то другому" работу, которую должны делать вы. Ну или кто-то из вашей команды.
Да, взамен вы получили разные плюшки вида "об этом не надо думать" и "оно всё само", но важно понимать, чем именно вы заплатите за эту "лёгкость".
Чем это отличается от других языков и технологий? Создатель hibernate-core решил что эти зависимости ему нужны.
Имеет право. В других ЯП и технологиях (С++) если не было мейк-файла - вы читаете нудный документ
типа гайда по установке и использованию и качаете библиотеки. Ставите их куда надо и конфигурите
линкер чтоб он их увидел.

Это называется управление зависимостями.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763631
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинВроде как работает более или менее.Ровно в одном сценарии - опишем всё, что может понадобиться.
Это, условно говоря, принцип "гарантированной достаточности".
А минимизация размера это, условно говоря, принцип "абсолютного минимализма".
Разные критерии - разные результаты.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763633
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЭто называется управление зависимостями.это ручной режим.
Бери шарп. Там автомат)))
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763639
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonСоздатель hibernate-core решил что эти зависимости ему нужны."Я подчеркнул".Имеет право.А правах его никто и не ограничивает.В других ЯП и технологиях (С++) если не было мейк-файла - вы читаете нудный документ
типа гайда по установке и использованию и качаете библиотеки.
Ставите их куда надо и конфигурите линкер чтоб он их увидел.

Это называется управление зависимостями."Это" называется "управление сборкой".
И, опять-таки, оптимизируется ровно одна задача - быстрая сборка на системе разработчика.
И, опять-таки, "не очень хорошо" подходит для сборки у конечных пользователей.

P.S.
Не очень корректно переносить процесс сборки исполняемого файла на систему с полностью динамической компоновкой.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763646
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Об чем здесь идет спор? Кто хочет зависимости подключать "по другому"?

Может быть у вас есть какая-то идея? Ну расскажите?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763652
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНу расскажите?"Вам не понравится".
А во-вторых - "это экономически неэффективно".
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763653
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коротко суть спора - за все приходится платить:)
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763658
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovОзверинВроде как работает более или менее.Ровно в одном сценарии - опишем всё, что может понадобиться.
Это, условно говоря, принцип "гарантированной достаточности".
А минимизация размера это, условно говоря, принцип "абсолютного минимализма".
Разные критерии - разные результаты.

мы давно перешли от водопада к итерациям - итеративно разбираться, что грузится, что надо и что описываем. Процесс постоянный.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763665
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonАртефакт org.hibernate:hibernate-core:5.4.1.Final имеет зависимости описанные здесь.

http://central.maven.org/maven2/org/hibernate/hibernate-core/5.4.1.Final/hibernate-core-5.4.1.Final.pom

Их описал человек. Что здесь - неуправляемое?Ну проблема примерно такого плана: они логируют все через jboss-logging, если отвлечься от того что, что jboss колхозники и ставят зависимости почему-то provided вместо optional, то получается так, что при деплое поделки в jboss будут возникать пляски с настройкой логирования, если приложение логирует не через jboss-logging - команде хибера нужно было делать shade для этого jboss-logging, а не как прямую зависимость включать. С javassist там тоже проблемы.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763668
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Коротко суть спора - за все приходится платить:)
Я надеюсь что эволюция здесь работает как главный фактор
того какие и как инструменты мы используем и будем
использовать в будущем.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763685
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверин
Код: xml
1.
dependencyManagement 



Вроде как работает более или менее.Вообще не работает, т.е. нельзя просто так взять и написать в dependencyManagement что-то в духе:

Код: xml
1.
2.
3.
4.
5.
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>${fasterxml.version}</version>
</dependency>



и после этого быть уверенным, что он затащит jackson-core и jackson-annotations той же версии - любая зависимость, в которой jackson-core будет явно указан затащит свою версию, в итоге приходится для каждого jar указывать версию - ад и израиль.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763691
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей Панфилов, да, именно поэтому - процесс итеративный, но вполне решаемый, причем за достаточно короткий промежуток времени. Но - это все таки процесс, а не "раз и готово".
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763693
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
До модулей дойдем?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763700
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonPetro123Коротко суть спора - за все приходится платить:)
Я надеюсь что эволюция здесь работает как главный фактор
того какие и как инструменты мы используем и будем
использовать в будущем.мы уже платим. Сегодня.
Мне пофиг на размер, если я гружу библиотеку с репо.
Вадя перфекционист и ему нужно размер и скорость.
Плохо что грань поиска килобайт нигде не обучают.
Иногда нужно забить на размер.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763704
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не Вадя. Другой мембер вопрос поднял. У меня тоже был вопрос толстых сборок под AWS-Lambda
но он пофиксился просто наблюдением над dependency:tree.

Лишним перфексионизмом я тоже не страдаю. Просто надо было добить артифакт хотя-бы до 128Мб
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763708
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Мне пофиг на размер, если я гружу библиотеку с репо.
Вадя перфекционист и ему нужно размер и скорость.
Плохо что грань поиска килобайт нигде не обучают.
Иногда нужно забить на размер.и согласен и нет
по большому счёту размер по-фигу. с другой стороны время сборки war удручает. и при деплое на клиента, если клиент тесовая машина не понятно где, и инет ограничен - то ж не радует...
по мелочам , а набегает - вот это огорчает
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763716
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяPetro123Мне пофиг на размер, если я гружу библиотеку с репо.
Вадя перфекционист и ему нужно размер и скорость.
Плохо что грань поиска килобайт нигде не обучают.
Иногда нужно забить на размер.и согласен и нет
по большому счёту размер по-фигу. с другой стороны время сборки war удручает. и при деплое на клиента, если клиент тесовая машина не понятно где, и инет ограничен - то ж не радует...
по мелочам , а набегает - вот это огорчает
После перехода на gradle время субъективно улучшается в пару раз.
В основном за счет 4х рабочих java-процессов сборщиков которые
постоянно подняты в памяти и ждут заданий. В отличие от mvn
который стартует медленнее.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763720
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинАндрей Панфилов, да, именно поэтому - процесс итеративный, но вполне решаемый, причем за достаточно короткий промежуток времени. Но - это все таки процесс, а не "раз и готово".Решаемо - это как у Вади? на ant перейти? Не хочу чтобы итеративно было, хочу чтобы оно работало более очевидно чем сейчас, т.е.: если я в dependencyManagement указал артефакт с определенной версией, то оно и для всех его зависимостей должно версии зафиксировать, а не так как сейчас - кто ближе тот и прав, ну и еще можно хотелок накидать в духе глобальных exclude, или описания того какой API/JSR реализует тот или иной артефакт, чтобы нельзя было два одновременно сложить вместе, или отделения test-зависимостей от compile.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763721
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадявремя сборки warда брось. Сколько?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763736
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123вадявремя сборки warда брось. Сколько?3 сек и 15 сек
на сборку.
мелочь . но раздражает. особенно когда что-то не получается и нужно ждать...
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763738
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По 15 минут собирали.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763740
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей ПанфиловОзверин
Код: xml
1.
dependencyManagement 



Вроде как работает более или менее.Вообще не работает, т.е. нельзя просто так взять и написать в dependencyManagement что-то в духе:

Код: xml
1.
2.
3.
4.
5.
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>${fasterxml.version}</version>
</dependency>



и после этого быть уверенным, что он затащит jackson-core и jackson-annotations той же версии - любая зависимость, в которой jackson-core будет явно указан затащит свою версию, в итоге приходится для каждого jar указывать версию - ад и израиль.

в итоге приходится - исключать ненужные после конфликт резолвинга. Я не очень понимаю, как вы собираетесь автоматизировать эту проблему.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763758
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинв итоге приходится - исключать ненужные после конфликт резолвинга. Я не очень понимаю, как вы собираетесь автоматизировать эту проблему.В gradle к примеру, подобных проблем нет (ну или по крайней мере они сведены к минимуму), ну и остальных приколов тоже поменьше будет (например, то что предоставляет сервер приложений можно просто описать как новую конфигурацию, а потом вычесть одну и другой)
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763760
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПо 15 минут собирали.ну дак у вас большие проекты.
Странно когда новичек вставивший контроллер беспокоится)
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763792
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей ПанфиловОзверинв итоге приходится - исключать ненужные после конфликт резолвинга. Я не очень понимаю, как вы собираетесь автоматизировать эту проблему.В gradle к примеру, подобных проблем нет (ну или по крайней мере они сведены к минимуму), ну и остальных приколов тоже поменьше будет (например, то что предоставляет сервер приложений можно просто описать как новую конфигурацию, а потом вычесть одну и другой)

но вместе с dependencyManagment стратегия разрешения конфликтов становится очевидной. Мавен - менее гибок, но вполне очевиден, если требуется. То есть, если в dependencyManagment указана конкретная версия и среди конфликтов эта версия есть - используется она, другой вопрос, что версия может быть указана, но среди всех заивисимостей ее нет - тогда тут уже вступает в силу закон, кто ближе к корню.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39763814
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Суровые конфликты идут обычно когда вливаются 2 разные версии одного и того-же продукта.
Помню часто gclib требовался в проекте в двух вариантах. Причем младшая версия тоже была
нужна.

Фиксили это заворачивая модуль в OSGI-bundle. (Это еще до девятки). Бандлы вобщем-то решали
свою задачу но практически в разработке их программеры люто ненавидели. За многословность.
Громоздкость и практически невостребованность со стороны кастомера.

С модулями девятки я еще не работал - поэтому практически не знаю как оно там "внутре".

Вобщем... тема для пятницы.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764350
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonМожет быть у вас есть какая-то идея? Ну расскажите?
Идея простая - проектировать.

Ну а реализация сложная. Но для начала нужно выполнять хотя бы минимальные требования, давно известные всем. Например - всё должно быть простым. Это отнюдь не с потолка взявшееся правило. Но такое важное ограничение практически очень часто не соблюдается. Берут одну систему, к ней прикручивают другую, потом третью и в итоге получается адская смесь из всего на свете, которая работает только тогда, когда сама этого захочет. А вот если бы с самого начала думали о последствиях, продумывали бы вопросы сложности, совместимости, масштабирования, расширения и т.д., тогда бы массы проблем просто не возникло бы. Но хочется же сделать быстрее, плюс бизнес сроки зажимает. Вот и берут что есть, втыкают лишь бы заработало, а потом удивляются - ну почему вдруг у нас прожект так разросся? И управление зависимостями в мавене и прочем сильно далеко от идеала, но опять же - раз оно там есть, то по быстрому прикрутили и нарисовали в бложеке "сакцесс стори", ура-ура, мы победили. Только сложность-то осталась, победа локальная, а в целом ситуация только ухудшилась.

Привычка делать всё "по быстрому" и "не парясь" до добра никогда не доводила.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764353
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555maytonМожет быть у вас есть какая-то идея? Ну расскажите?
Идея простая - проектировать.

Ну а реализация сложная. Но для начала нужно выполнять хотя бы минимальные требования, давно известные всем. Например - всё должно быть простым. Это отнюдь не с потолка взявшееся правило. Но такое важное ограничение практически очень часто не соблюдается. Берут одну систему, к ней прикручивают другую, потом третью и в итоге получается адская смесь из всего на свете, которая работает только тогда, когда сама этого захочет. А вот если бы с самого начала думали о последствиях, продумывали бы вопросы сложности, совместимости, масштабирования, расширения и т.д., тогда бы массы проблем просто не возникло бы. Но хочется же сделать быстрее, плюс бизнес сроки зажимает. Вот и берут что есть, втыкают лишь бы заработало, а потом удивляются - ну почему вдруг у нас прожект так разросся? И управление зависимостями в мавене и прочем сильно далеко от идеала, но опять же - раз оно там есть, то по быстрому прикрутили и нарисовали в бложеке "сакцесс стори", ура-ура, мы победили. Только сложность-то осталась, победа локальная, а в целом ситуация только ухудшилась.

Привычка делать всё "по быстрому" и "не парясь" до добра никогда не доводила.

сижу, записываю новую для себя информацию.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764388
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555Идея простая - проектировать.ну в общем я так и поступаю - с проектирования...
но вот по теме топика как-то не получается
т.е. надо решить maven vc ant?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764403
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяalex55555Идея простая - проектировать.ну в общем я так и поступаю - с проектирования...
но вот по теме топика как-то не получается
т.е. надо решить maven vc ant?

ant работает с зависимостями?
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764416
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинant работает с зависимостями?

внезапно
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764429
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей ПанфиловОзверинant работает с зависимостями?

внезапно

такси дла мавена шоле?:)
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764431
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чото взоржал.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764435
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинant работает с зависимостями?нет.
он просто подтягивает библиотеки которые ему укажешь.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764440
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяОзверинant работает с зависимостями?нет.
он просто подтягивает библиотеки которые ему укажешь.

допустим, что он даже мавен не юзает(хотя кодга я в последний раз работал с этим древним отложением мамонта, он юзал мавен таски , потому что никакого собственного депенденси менеджмента у него отродясь не было), если у него нет инструментов вменяемых для работы с зависимостиям - то какие тут могут быть или? Тогда уж gradle. Или ant в связки с чем-нибудь, что умеет в менеджмент зависимостей.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764463
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555maytonМожет быть у вас есть какая-то идея? Ну расскажите?
Идея простая - проектировать.

Ну а реализация сложная. Но для начала нужно выполнять хотя бы минимальные требования, давно известные всем. Например - всё должно быть простым. Это отнюдь не с потолка взявшееся правило. Но такое важное ограничение практически очень часто не соблюдается. Берут одну систему, к ней прикручивают другую, потом третью и в итоге получается адская смесь из всего на свете, которая работает только тогда, когда сама этого захочет. А вот если бы с самого начала думали о последствиях, продумывали бы вопросы сложности, совместимости, масштабирования, расширения и т.д., тогда бы массы проблем просто не возникло бы. Но хочется же сделать быстрее, плюс бизнес сроки зажимает. Вот и берут что есть, втыкают лишь бы заработало, а потом удивляются - ну почему вдруг у нас прожект так разросся? И управление зависимостями в мавене и прочем сильно далеко от идеала, но опять же - раз оно там есть, то по быстрому прикрутили и нарисовали в бложеке "сакцесс стори", ура-ура, мы победили. Только сложность-то осталась, победа локальная, а в целом ситуация только ухудшилась.

Привычка делать всё "по быстрому" и "не парясь" до добра никогда не доводила.
Эволюционный путь - предполагает скорость реализации.
Если есть две команды. И одна из них выдает решение быстрее - то она всегда будет получать заказы на новые
проекты. Риски сюда тоже заложены. Ведь первая команда их и будет решать. Вторая команда фейлит сроки.
Фейлит один раз. Второй. А потом она вообще не участник разработки. Заказов нет.

Эволюционный путь.

Философские рассуждения о том что надо проектировать я 100% принимаю и соглашаюсь.
Думания о последствиях также важны. Но сколько времени вы будете думать? День? Неделю?
Месяц? Когда у вас будет definition of done?

Вот в чем вопрос.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764480
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинant работает с зависимостями?
Легко! Только самому всё прописать надо ручками :)
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764525
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GarrickЛегко! Только самому всё прописать надо ручками :)дак и в maven , если прописать ручками, можно сократить.....
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764564
сезонатор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
maytonalex55555пропущено...

Идея простая - проектировать.

Ну а реализация сложная. Но для начала нужно выполнять хотя бы минимальные требования, давно известные всем. Например - всё должно быть простым. Это отнюдь не с потолка взявшееся правило. Но такое важное ограничение практически очень часто не соблюдается. Берут одну систему, к ней прикручивают другую, потом третью и в итоге получается адская смесь из всего на свете, которая работает только тогда, когда сама этого захочет. А вот если бы с самого начала думали о последствиях, продумывали бы вопросы сложности, совместимости, масштабирования, расширения и т.д., тогда бы массы проблем просто не возникло бы. Но хочется же сделать быстрее, плюс бизнес сроки зажимает. Вот и берут что есть, втыкают лишь бы заработало, а потом удивляются - ну почему вдруг у нас прожект так разросся? И управление зависимостями в мавене и прочем сильно далеко от идеала, но опять же - раз оно там есть, то по быстрому прикрутили и нарисовали в бложеке "сакцесс стори", ура-ура, мы победили. Только сложность-то осталась, победа локальная, а в целом ситуация только ухудшилась.

Привычка делать всё "по быстрому" и "не парясь" до добра никогда не доводила.
Эволюционный путь - предполагает скорость реализации.
Если есть две команды. И одна из них выдает решение быстрее - то она всегда будет получать заказы на новые
проекты. Риски сюда тоже заложены. Ведь первая команда их и будет решать. Вторая команда фейлит сроки.
Фейлит один раз. Второй. А потом она вообще не участник разработки. Заказов нет.

Эволюционный путь.

Философские рассуждения о том что надо проектировать я 100% принимаю и соглашаюсь.
Думания о последствиях также важны. Но сколько времени вы будете думать? День? Неделю?
Месяц? Когда у вас будет definition of done?

Вот в чем вопрос.Диалоги демагогов
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39764696
Фотография Пылинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей ПанфиловОзверинant работает с зависимостями?

внезапно
Совершенно не внезапно, потому что это Maven, точнее его часть - Maven Ant Tasks, которая генерит данные для Ant.

Maven Ant Tasks
Note: This component is retired. It is no longer maintained
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39765042
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадят.е. надо решить maven vc ant?
Вообще лучше постепенно вырабатывать не усложняющий жизнь набор инструментов. А уж что там для сборки прикрутить - дело десятое. По зависимостям ещё OSGi работает. Ну и вообще граф зависимостей и операции с ним отнюдь не рокет сайнс, так что можно и самому небольшую утилитку слепить. Только ещё до зависимостей нужно уметь хотя бы элементарно выделять общие библиотеки и ложить их в общий для всего сервера каталог, а не пихать в каждое приложение, а то-ж в приложение напихают всего, потом так же в другое, потом в третье, и никто ничего не согласовывает, ну и лезут конфликты, я уж не говорю про объём.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39765049
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЭволюционный путь - предполагает скорость реализации.
Бизнесу важна цена. Скорость для них второстепенна.

А вот убеждение заказчика в выполнении задачи в некий срок ХХХ, а потом срыв этого срока, это уже работа сейлзов, а не программистов. Хотя и программисты могут лишку оптимистичные заявки выкладывать, да.

Но с другой стороны, наш бизнес живёт сегодняшним днём, завтрашний день его будет волновать когда он наступит, поэтому опять возникает стимул продать сроки, то есть ублажить хотелку сейчас, а дальше - что будет то и будет, главное бабло срубили. В общем опять программисты не виноваты.

Но всё же помнить об этом нужно. И уметь делать надолго - тоже нужно. Хотя тренироваться в современном ынтырпрайзе на эту тему весьма и весьма сложно.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39765126
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Беря во внимание вопрос топик-стартера мне нечего добавить или возразить.
Все - верно. Но неверно будет впадать в каменный век и собирать сборки через
java + jar archiver. Для мелкого проекта как у автора на это можно пойти.
Но в ентерпрайзе этому места нет. Хотя еще раз я согласен с ценой разработки
и скоростью. Надеюсь что на двумерной диаграмме будет совершенно очевидна
заинтересованность заказчика в скорости внедрения бизнес-фичи и в качестве
написанного кода.
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39765131
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555Только ещё до зависимостей нужно уметь хотя бы элементарно выделять общие библиотеки и ложить их в общий для всего сервера каталог, а не пихать в каждое приложение, а то-ж в приложение напихают всего, потом так же в другое, потом в третье, и никто ничего не согласовывает, ну и лезут конфликты, я уж не говорю про объём.напихать все в одно приложение(war)
в этом есть смысл: разворачиваешь сервер( к примеру что-то из никсов) и просто деплоишь туда вар. надо переустановить сервер/ развернуть новый - не надо вспоминать , что там было - просто деплоишь и всё работает...
...
Рейтинг: 0 / 0
Большой размер war файлов
    #39765711
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинМавен - менее гибок, но вполне очевиден, если требуетсяОзверинкодга я в последний раз работал с этим древним отложением мамонтаКак-то у меня отношение ко всему этому хламу несколько иное, тезисы примерно такие:
в свое время SUN придумал ant как замену make (при этом make живее всех живых ), позже передал его в ASF, а эти колхозники его взяли и убили (ну вообще такова репутация ASF - могила open source), а на замену выкатили какую-то фигню, которая ни зависимости не умеет толком (в моем идеализированно представлении) ни сборку

сделать "условно сложный" (пара десятков модулей, интеграционные тесты, сборки под разные сервера приложений) проект на maven можно, но крайне сложно, основная причина тому: отсутствие зависимостей между модулями проекта, со всеми вытекающими, т.е.:
-- "однопроходную" сборку делать априори плохо, потому что в "условно сложном" проекте участвуют разные команды, поэтому они предпочитают что-то собирать частями просто потому что так быстрее получается, делать отдельные "дыры" в сборке при помощи профилей - идея на самом деле так себе: во-первых, это сложно рефакторить, потому что подобный рефакторинг затрагивает остальных членов команды, во-вторых, сложность проекта увеличивается в разы, а когда мы всю эту кашу пытаемся затащить в CI, то становится еще более печально - появляются разные бранчи и пр.
-- когда мы отказывается от "однопроходной" сборки, начинаются проблемы с тем, что чтобы удовлетворить зависимости между модулями нужно уже гадить в ~/.m2, и тут приходится выдумывать какую-то необычайную фигню - например, в CI использовать docker, что в свою очередь уже добавляет проблем разработчикам
-- писать плагины для maven в том же проекте не получается, потому что у него там какое-то собственное мнение про класлоадер

и в общем получается так, что maven - это удел проектов с не более пяти модулями, без интеграционных тестов и с убогой инфраструктурой.
...
Рейтинг: 0 / 0
90 сообщений из 90, показаны все 4 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Большой размер war файлов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]