diff --git a/dev/devops/docker/Установка Docker и Docker Compose.md b/dev/devops/docker/Установка Docker и Docker Compose.md index 5605e07e..2cc43e19 100644 --- a/dev/devops/docker/Установка Docker и Docker Compose.md +++ b/dev/devops/docker/Установка Docker и Docker Compose.md @@ -23,13 +23,12 @@ sudo systemctl enable --now docker Также установим docker-compose. Обращаю ваше внимание, что актуальным является Docker Compose V2, который в отличие от первой версии поставляется бинарными файлами. -[Актуальная версия docker-compose](https://github.com/docker/compose/releases/) - ```shell mkdir -p ~/.docker/cli-plugins/ curl -SL https://github.com/docker/compose/releases/download/v2.14.0/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose chmod +x ~/.docker/cli-plugins/docker-compose ``` +[Актуальная версия docker-compose](https://github.com/docker/compose/releases/) > [!INFO] > Эта команда устанавливает Compose V2 для активного пользователя в каталог `$HOME`. Чтобы установить Docker Compose для всех пользователей вашей системы, замените `~/.docker/cli-plugins` на `/usr/local/lib/docker/cli-plugins`. diff --git a/dev/java/Использование wildcard imports в Java.md b/dev/java/Использование wildcard imports в Java.md index 7a138d6e..c3d2ca21 100644 --- a/dev/java/Использование wildcard imports в Java.md +++ b/dev/java/Использование wildcard imports в Java.md @@ -5,7 +5,7 @@ tags: - type/opinion date: 2024-09-06 zero-link: - - "[[../garden/ru/meta/zero/00 Java разработка|00 Java разработка]]" + - "[[../../meta/zero/00 Java разработка|00 Java разработка]]" parents: linked: --- diff --git a/dev/java/Параллельная сборка модулей в Maven.md b/dev/java/Параллельная сборка модулей в Maven.md new file mode 100644 index 00000000..0ca14c0e --- /dev/null +++ b/dev/java/Параллельная сборка модулей в Maven.md @@ -0,0 +1,39 @@ +--- +aliases: +tags: + - maturity/🌱 +date: + - - 2023-11-20 +zero-link: + - "[[../../meta/zero/00 Maven|00 Maven]]" +parents: +linked: +--- +Небольшая хитрость, которая может ускорить сборку многомодульного maven проекта. Это параллельная сборка модулей. + +```shell +mvn -T 1C clean install +``` +1C означате использовать 1 поток на 1 ядро процессора + +Но есть одно условие. Ваш проект должен содержать модули, которые не зависят друг от друга последовательно. + +Объясню на примере проекта, который состоит из 18 модулей. Оранжевыми прямоугольники я выделил модули, которые могут собираться параллельно, так как они не зависят друг от друга. + +![400](../../meta/files/images/Pasted%20image%2020231120092703.png) + +По факту эти группы модулей зависят только друг от друга. Сначала собирается группа `domain`, от нее зависит группа `context`, потом core и так далее. Без `context` не собрать `core`, думаю суть понятна. Но вот модули core не зависят друг от друга, и могут собираться параллельно. + +Для примера вот время сборки в последовательном режиме: + +![](../../meta/files/images/Pasted%20image%2020231120092720.png) + +А вот в параллельном: + +![](../../meta/files/images/Pasted%20image%2020231120092732.png) + +Выигрыш почти в два раза. + +И на последок, вот как можно настроить этот параметр в Idea, чтобы не приходилось запускать сборку из консоли каждый раз. Эту настройку нужно делать в каждом проекте, она не глобальная. + +![](../../meta/files/images/Pasted%20image%2020231120092753.png) \ No newline at end of file diff --git a/meta/files/images/Pasted image 20231120092703.png b/meta/files/images/Pasted image 20231120092703.png new file mode 100644 index 00000000..f98185fb Binary files /dev/null and b/meta/files/images/Pasted image 20231120092703.png differ diff --git a/meta/files/images/Pasted image 20231120092720.png b/meta/files/images/Pasted image 20231120092720.png new file mode 100644 index 00000000..6a0bcf57 Binary files /dev/null and b/meta/files/images/Pasted image 20231120092720.png differ diff --git a/meta/files/images/Pasted image 20231120092732.png b/meta/files/images/Pasted image 20231120092732.png new file mode 100644 index 00000000..b55c85e5 Binary files /dev/null and b/meta/files/images/Pasted image 20231120092732.png differ diff --git a/meta/files/images/Pasted image 20231120092753.png b/meta/files/images/Pasted image 20231120092753.png new file mode 100644 index 00000000..8ff429ca Binary files /dev/null and b/meta/files/images/Pasted image 20231120092753.png differ diff --git a/meta/zero/00 Java разработка.md b/meta/zero/00 Java разработка.md index e5356b4d..c7febb35 100644 --- a/meta/zero/00 Java разработка.md +++ b/meta/zero/00 Java разработка.md @@ -7,7 +7,9 @@ permalink: dev/java title: Java разработка --- - [Устройство Java](Устройство%20Java.md) -- [00 Снипеты для Java](00%20Снипеты%20для%20Java.md) +- [Снипеты для Java](00%20Снипеты%20для%20Java.md) +- Системы сборки + - [Maven](00%20Maven.md) - Фреймворки - [Quarkus](00%20Quarkus.md) - [SpringBoot](00%20SpringBoot.md) diff --git a/meta/zero/00 Maven.md b/meta/zero/00 Maven.md new file mode 100644 index 00000000..7c4ceb93 --- /dev/null +++ b/meta/zero/00 Maven.md @@ -0,0 +1,16 @@ +--- +zero-link: + - "[[00 Java разработка]]" +tags: + - type/zero-link + - maturity/🌱 +aliases: + - мавен + - мавеном +date: "[[2023-10-21]]" +parents: + - "[[Система сборки]]" +linked: +title: Maven +--- +- [Параллельная сборка модулей в Maven](../../dev/java/Параллельная%20сборка%20модулей%20в%20Maven.md) \ No newline at end of file