Как я могу дать eclipse больше памяти, чем 512 МБ?


97

У меня следующая настройка, но когда я ставлю 1024 и заменяю все 512 на 1024, eclipse вообще не запускается. Как я могу иметь более 512 МБ памяти для моей JVM eclipse?

-startup
plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
com.springsource.sts.ide
--launcher.XXMaxPermSize
512M
-vm
C:\Program Files (x86)\Java\jdk1.6.0_18\bin\javaw 
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms512m
-Xmx512m
-XX:MaxPermSize=512m

Ответы:


116

У меня было много проблем, пытаясь заставить Eclipse принимать столько памяти, сколько я хотел бы использовать (например, от 2 до 4 гигабайт).

Откройте eclipse.iniв каталоге установки Eclipse. Вы сможете изменить размер памяти после-vmargs до 1024 без проблемдо некоторого максимального значения, которое зависит от вашей системы. Вот этот раздел на моем компьютере с Linux:

-vmargs
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=512m
-Xms512m
-Xmx1024m

А вот этот раздел на моем компьютере с Windows:

-vmargs
-Xms256m
-Xmx1024m

Но мне не удалось установить его выше 1024 мегабайт . Если кто-нибудь знает, как заставить это работать, я хотел бы знать.

РЕДАКТИРОВАТЬ : 32-битная версия juno, похоже, не принимает больше Xmx1024m, тогда как 64-битная версия принимает 2048.

EDIT : сообщение Ника содержит отличные ссылки, которые объясняют две разные вещи:

  • Проблема во многом зависит от вашей системы и количества доступной непрерывной свободной памяти, и
  • Используя javaw.exe (в Windows), вы можете получить больший выделенный блок памяти.

У меня 8 гигабайт -Xmxоперативной памяти, и я не могу установить более 1024 мегабайт оперативной памяти, даже когда загружено минимальное количество программ и оба windows / linux сообщают от 4 до 5 гигабайт свободной оперативной памяти.


6
Куда вы помещаете эту информацию?
CodyBugstein

6
@Imray, вам нужно добавить (или заменить) эти настройки в свой eclipse.iniфайл. Местоположение зависит от вашей платформы. В Windows он находится в той же папке, что и приложение Eclipse. Для OS X вам потребуется «Показать содержимое пакета» в приложении Eclipse, а затем отредактировать Contents / MacOS / eclipse.ini в текстовом редакторе. Не уверен насчет Linux ... Упражнение оставлено читателю? :-)
sherb

5
Полезно знать значение параметров: все параметры -X после -vmargs передаются непосредственно в JVM, поэтому запустите «java -X», чтобы получить документацию. -Xms устанавливает начальную кучу, а -Xmx устанавливает максимальный размер кучи, до которой может расти. PermSize - это область, в которой объекты класса / метода хранятся отдельно от кучи.
jfritz42

Обратите внимание, что -XX: MaxPermSize = 512m не нужно устанавливать для Java 8. См. Stackoverflow.com/questions/18339707/… .
Пол Янсен

1
Вот где elcipse.ini может находиться в Linux или Ubuntu stackoverflow.com/a/14898134/457687
Влад

37

Вот как я увеличил выделение памяти для Eclipse Juno:

введите описание изображения здесь

В моей системе всего 4 ГБ, и когда я работаю над eclipse, я не запускаю вместе с ним никаких других тяжелых программ. Так выделил 2Гб.

Я заметил, что разница между минимальным и максимальным значениями должна быть 512. Следующее значение должно быть, скажем, 2048 мин + 512 = 2560 макс.

Вот значение кучи внутри eclipse после настройки -Xms2048m -Xmx2560m:

введите описание изображения здесь


Примечание - не забывайте строчные буквы m(как я). В остальном отлично работает!
Бен

Что это за тема для раскраски затмения?
wawanopoulos

3
Я использую Carboon Color Theme, вы можете скачать ее здесь: ссылка
Ибн Саид


4

Вы можете скопировать это в свой eclipse.iniфайл, чтобы иметь 1024 МБ:

-clean -showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Xms512m
-Xmx1024m
-XX:PermSize=128m
-XX:MaxPermSize=256m 

2

Я не думаю, что вам нужно менять MaxPermSize на 1024 м. Это работает для меня:

-startup
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms256m
-Xmx1024m
-XX:PermSize=64m
-XX:MaxPermSize=128m

8
гм ... не могли бы мы получить несколько комментариев вместе с отрицательными голосами, пожалуйста? Мой ответ может быть неправильным, но это поможет мне понять, почему.
elduff 09

1

Во время работы над корпоративным проектом в STS (в значительной степени основанном на Eclipse) у меня постоянно происходили сбои, и STS выходил на плато при использовании около 1 ГБ ОЗУ. Я не мог добавить новые файлы .war на свой локальный сервер tomcat, и после удаления папки tomcat, чтобы повторно добавить ее, обнаружил, что я тоже не могу ее повторно добавить. По сути, почти все, что требовало нового всплывающего окна, помимо основных меню, приводило к зависанию STS.

Я отредактировал STS.ini (ваш Eclipse.ini можно настроить аналогичным образом) следующим образом:

--launcher.XXMaxPermSize 1024M -vmargs -Xms1536m -Xmx2048m -XX: MaxPermSize = 1024m

Немедленно перезагрузил STS и увидел плато примерно на 1,5 гигабайта, пока наконец не рухнул.


0

Для меня это сработало: -vmargs -Xms1536m -Xmx2048m -XX: MaxPermSize = 1024m на Eclipse Java Photon, июнь 2018 г.

Работает под управлением Windows 10, оперативной памяти 8 ГБ и 64-разрядной версии. Вы можете расширить -Xmx2048 -XX: MaxpermSize = 1024 м до 4096 м, если у вашего компьютера хороший плунжер. Моя работала хорошо.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.