Выделение памяти для Java-приложений

Иногда нужно устанавливать не только максимальный размер хипа но и минимальный (стартовый).
Если выставить -Xms512M -Xmx1024 то это заставит GC работать в более агрессивном режиме, и в отсутствие активного выделения памяти размер хипа будет стремиться к стартовому значению.
Если выставить только -Xmx то размер занимаемой памяти программой будет постепенно увеличиваться, пока не достигнет указанного значения.
Есть подозрение, что jvm не проверяет наличие реально доступной памяти в системе, если написать слишком большое число, jvm в рамках этого числа будет просить у OS все большее пространство до тех пор, пока память не закончится, и при очередном невыполнимом запросе OS просто остановит jvm.
Таким образом, если просто выставить размер хипа очень большим, это не гарантирует бесперебойной работы программы.
Нужно подбирать параметры -Xmx и -Xms для каждого конкретного случая.

Выделение памяти для Java-приложений

Простота

«Простота — это главная составляющая того, чтобы быть умным, делать что-то с умом, да и вообще ума. …

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

Ivar Jacobson, major contributor to UML

Простота

How to add dependent maven project as sources in Intellij Idea

Note: this project was added previously as a maven dependency, so now we need to add it as a sources.

Project Structure -> Modules -> [+] -> Import Module

go through the wizard…

After that go to maven tab, then select grey root nodes, right click, choose ‘Unignore Projects’

Maybe you need to reopen IDE.

UPD: also you need to reload cashes. I did it by:

  1. change version of the adding library to one of previous
  2. click ‘Import Changes’ on the ‘Maven projects need to be imported’ tooltip
  3. change it back
  4. again click ‘Import Changes’ on the ‘Maven projects need to be imported’ tooltip
How to add dependent maven project as sources in Intellij Idea