Как улучшить производительность Netbeans? - PullRequest
106 голосов
/ 23 октября 2008

Есть ли реальный способ заставить Netbeans загружаться и работать быстрее?

Это слишком медленно и усугубляется, когда вы некоторое время кодировали. Съедает всю мою оперативную память.


Я на машине с Windows, в частности Windows Server 2008 Datacenter Edition x64, 4 Гб оперативной памяти, процессор 3 ГГц Core 2 Duo и т. Д. Я использую x64 JDK. Я использую антивирус NOD32, так как для меня это лучшая производительность машины.

В диспетчере задач netbeans.exe показывает только не более 20 МБ, java.exe более 600 МБ.

Мой проект - это веб-приложение J2EE, более 500 классов, только библиотеки проектов не включены (внешние). И когда я сказал «медленно», я имею в виду, что Netbeans на 3, 4, 5 или более минут заморожен.

Является ли мой проект слишком большим для Netbeans, если ему нужно прочитать все файлы, чтобы получить состояние файлов, например предупреждения об ошибках, статус SVN и т. Д.? Могу ли я отключить все это? Можно ли настроить его на сканирование только при открытии файла?

Обычно загрузка моего процессора составляет 30 процентов при всех открытых инструментах, я имею в виду Netbeans, MS SQL Manager, Notepad, XMLSpy, Task Manager, Delphi, VirtualBox. NetBeans потребляет больше оперативной памяти, чем мои виртуализированные системы.

В Linux он такой же медленный, как в Windows на той же машине (Ubuntu 8.04 x64).

Это правда, что команда Netbeans улучшила скорость запуска, но когда она открывается, она начинает кэшировать ВСЕ.

Я использовал некоторые параметры JVM для установки высокого использования памяти и другие: "C:\Program Files\NetBeans Dev\bin\netbeans.exe" -J-Xms32m -J-Xmx512m -J-Xverify:none -J-XX:+CMSClassUnloadingEnabled

Но это все еще медленно.

Ответы [ 28 ]

1 голос
/ 28 февраля 2014

Аналогично предложению поставить все на SSD.

Я запускаю netbeans из freeBSD. Файлы кэша netbeans находились в моем домашнем каталоге в .netbeans. Мой домашний каталог был смонтирован поверх nfs, поэтому доступ был очень медленным. Перемещение .netbeans на локальную машину значительно улучшило производительность. Я добавил мягкую ссылку из .netbeans в моем домашнем каталоге в локальный каталог. Netbeans описывает, как изменить usedir и cachedir здесь и перечисляет это как причину в пункте 4.

До этого я мог написать целые предложения в комментариях, прежде чем графический интерфейс поймал и отобразил их. После того, как текст появляется как я печатаю.

0 голосов
/ 03 декабря 2018

Попробуйте профилировать Netbeans с помощью VisualVM. Если «горячей точкой» является org.gnome.accessibility.atkwrapper.emitsignal (), попробуйте запустить Netbeans с

-J-Djavax.accessibility.assistive_technologies=" "

Это очень помогло в моем случае.

Я действительно не знаю, почему именно этот инструментарий использовался, но похоже, что его вообще безопасно отключить.

0 голосов
/ 21 июня 2016

Открыть файл:

/Applications/NetBeans/NetBeans\ 8.0.2.app/Contents/Resources/NetBeans/etc/netbeans.conf

Я добавил некоторые опции, показанные ниже:

netbeans_default_options="-J-Dsun.java2d.opengl=true -J-Dsun.java2d.d3d=false -J-Xmx2048m ...

Использование opengl может помочь вам, в зависимости от вашей системы. Я бегу OsX. 2048м может быть слишком много, но, кажется, не больно :-) ...

0 голосов
/ 16 марта 2016

Убедитесь, что в папке вашего проекта есть папка, содержащая файлы вашей платформы или библиотеки (например, у Laravel есть поставщик папки) - файлы, которые вы не используете напрямую. Нажмите на свой «проект»> свойства. В левой части выберите «игнорировать папки» (я не знаю, как по-английски, но до «Frameworks»). В правой части нажмите «Добавить папку», выберите «папки» - это сделает ваш Netbeans 8 быстрее. У меня это работает.

0 голосов
/ 24 сентября 2015

У меня были большие проблемы с NetBeans 8.0.2. Это старый вопрос, но, возможно, кто-то еще, например, я, окажется с такой же проблемой, и я не нашел ответа, который помог бы мне где-нибудь.

У меня есть NetBeans 8.0.2 с плагином Ruby on Rails в Windows 7. Среда IDE зависала до 10 секунд практически при каждом изменении, которое я вносил в некоторые файлы. Это была проблема только с большими файлами, но это должно зависеть от того, были ли другие большие файлы без проблем.

Проблема была вызвана «подсказкой» «Rails 3 Deprecations», я ее отключил и теперь она очень быстрая, я могу все остальное включить без проблем.
Это под Tools -> Options -> Editor -> Hints.

В других ответах есть также рекомендации по оптимизации с параметрами запуска. Я нашел эти ссылки о JVM-переключателях, которые помогли мне при тестировании оптимизировать (но оказалось, что эти настройки не имеют ничего общего с моей проблемой), они очень старые, но содержат некоторую полезную информацию:
Объяснение JVM-переключателей .
Некоторые (старые) рекомендации

0 голосов
/ 28 июня 2015

Для меня выработано включение автоматического сканирования источников.

0 голосов
/ 16 сентября 2013

Была такая же проблема с Netbeans 7.3. * И 7.4 Beta на Windows 7. Включив и выключив некоторые плагины, я понял, что это был svn плагин , который постоянно увеличивал процессор примерно до 27%, превращая мой ноутбук в тостер. Выключите его и снова используйте код :))

0 голосов
/ 10 апреля 2014

Для Windows - Должно работать и для других ОС

Netbeans, как и любое другое Java-приложение, требует настройки для своей JVM.

Пожалуйста, прочитайте следующую ссылку, чтобы получить результаты тестов для netbeans

https://performance.netbeans.org/reports/gc/

Следующие настройки отлично работают на моем ПК с Windows 7 с 4 ГБ ОЗУ и четырехъядерным процессором I5.

(Проверьте строку netbeans_default_options в файле конфигурации netbeans внутри папки bin и замените строку конфигурации следующим образом)

netbeans_default_options = "- XX: TargetSurvivorRatio = 1 -Xverify: none -XX: PermSize = 100M -Xmx500m -Xms500m -XX + UseParallelGC $ {netbeans_default_options}"

Небольшое предложение: Сборка мусора играет важную роль в размере кучи JVM, и, поскольку у меня был четырехъядерный процессор, я использовал Parallel GC. Если у вас однопоточный процессор, используйте UseSerialGC. Исходя из моего опыта, если значения Xmx Xms одинаковы, JVM не снижает служебной информации при переключении между минимальным и максимальным значениями. В моем случае, когда размер моего приложения превышает 500 МБ, параллельный сборщик мусора оказывается полезным для очистки нежелательного мусора, поэтому мое приложение никогда не превышает 500 МБ на моем ПК.

...