Я создаю тестовые приложения. Мне нужно загрузить их на удаленный сервер, поэтому важен сгенерированный размер войны. Тестовые приложения в основном не используют плагины. Даже после удаления всех плагинов по умолчанию сгенерированная война составляет 20 мб. Есть ли способ еще больше уменьшить военный файл? Я использую Грааль 2.2. Я предполагаю, что на войне есть много вещей, которые не нужны. Я ценю любую помощь. Спасибо!
сгенерированный файл войны составляет 20 МБ без каких-либо плагинов в Grails 2.2?
Ответы (2)
Даже после удаления всех плагинов по умолчанию сгенерированная война составляет 20 мб. Есть ли способ еще больше уменьшить военный файл? Я использую Грааль 2.2.
Невозможно сказать, есть ли в файле .war
что-то еще, что можно удалить или нет, не зная, что делает ваше приложение и какие библиотеки на самом деле используются. Посмотрите на файлы .jar
, которые находятся в вашем файле .war
, и если есть те, которые вам не нужны, их можно исключить. См. https://grails.github.io/grails2-doc/2.2.x/guide/conf.html#ivy для получения информации об исключении транзитивных зависимостей.
На вашем месте я бы посмотрел на обновление до Grails 4 или, может быть, на Micronaut. Как правило, Grails оптимизирован для скорости разработки, работы с большим количеством библиотек и использования соглашений, а не конфигурации. При этом вы можете получить некоторые преимущества при переходе на Grails 4, так как было проведено множество рефакторингов, а некоторые старые зависимости были удалены. Кроме того, Grails 4 использует Micronaut в качестве родительского контекста, что ускоряет запуск. Grails 3 и 4 обычно также потребляют меньше памяти. Усилия по обновлению до Grails 3 зависят от того, сколько у вас плохих практик * от количества кода, который у вас есть.
Таким образом, обновление до Grails 3 не является тривиальным, хотя, учитывая размеры вашего приложения, оно может оказаться не таким уж плохим. Обновление формы 3 до 4 намного проще. Переход от 2 к 4 будет немного больше, чем переход от 2 к 3, но опять же, если ваше приложение действительно маленькое, это может быть не так уж плохо.
Micronaut, с другой стороны, был создан для микросервисов и занимает меньше места. Вы по-прежнему можете использовать Groovy с ним, и хотя он имеет некоторые общие черты с Grails, он не использует соглашение по конфигурации и больше похож на весеннюю загрузку с большим количеством аннотаций.