Получение ошибки OutOfMemory при попытке обновить мой Intellij

Я пытаюсь обновить IntelliJ IDEA от сборки 141.177 до 141.178. Когда обновленный загружает все необходимые файлы и запускает обновление, я получаю эту ошибку:

Temp. directory: /tmp

java.lang.OutOfMemoryError: Java heap space
    at ie.wombat.jbdiff.JBPatch.bspatch(JBPatch.java:91)
    at com.intellij.updater.BaseUpdateAction.applyDiff(BaseUpdateAction.java:112)
    at com.intellij.updater.UpdateAction.doApply(UpdateAction.java:44)
    at com.intellij.updater.PatchAction.apply(PatchAction.java:184)
    at com.intellij.updater.Patch.forEach(Patch.java:308)
    at com.intellij.updater.Patch.forEach(Patch.java:360)
    at com.intellij.updater.Patch.apply(Patch.java:303)
    at com.intellij.updater.PatchFileCreator.apply(PatchFileCreator.java:84)
    at com.intellij.updater.PatchFileCreator.apply(PatchFileCreator.java:75)
    at com.intellij.updater.Runner.doInstall(Runner.java:295)
    at com.intellij.updater.Runner.access0(Runner.java:18)
    at com.intellij.updater.Runner.execute(Runner.java:261)
    at com.intellij.updater.SwingUpdaterUI.run(SwingUpdaterUI.java:191)
    at java.lang.Thread.run(Thread.java:745)

на /tmp папка должна быть на моем корневом разделе, который имеет размер 20GiB, и в настоящее время он все еще имеет около 8GiB слева. Поэтому я не очень понимаю, в чем проблема может быть здесь прямо сейчас. Кроме того, я не уверен в части ОЗУ, моя система использует 40% моей ОЗУ, когда я делаю обновление.

2 ответов


читайте JetBrains документация & ответ о том, как увеличить максимальный размер кучи для IntelliJ.

Set -Xmx2048m на idea.vmoptions (32-разрядная версия) или idea64.vmoptions (64-разрядная версия) и скопируйте его в соответствующее место в соответствии с документацией, о которой я упоминал выше.

Я бы тоже File > Invalidate Caches / Restart > Invalidate and Restart, просто чтобы убедиться, что изменения приняты (возможно, не обязательно, но на всякий случай).

я получил точное та же трассировка стека сегодня при попытке обновления с 14.1.1 до 14.1.2 с помощью автоматического обновления. В OS X я решил это, переименовав ~/Library/Preferences/IdeaIC14/idea.vmoptions до idea64.vmoptions. У меня уже было -Xmx2048m установлен в этом файле, но, по-видимому, он не читался, пока я не переименовал его правильно.

Также см. YouTrack отслеживания выпуска идея-139036 (спасибо @Meo).


я попал в эту же проблему. Проблема в этой идее.vmoptions изменяет память для основного процесса intellij, но не процесс обновления. В моем случае процесс обновления имел только 500m, выделенный ему.

Я прошел мимо проблемы, оставив окно обновления открытым после того, как он получил ошибку. Я тогда побежал ps -Af | grep java (Я запускаю linux). Это показало мне командную строку для процесса обновления. Я скопировал его и изменил -Xmx500m to -Xmx1024m. Затем я запустил измененную командную строку в другая консоль, как только это было сделано, я вышел из исходного окна обновления, и все было хорошо.