Как сделать работу с Eclipse быстрее?
Например: Я отключаю все плагины, которые мне не нужны (Mylyn, Subclipse,…).
Вместо того, чтобы использовать плагин для Mercurial, я настраиваю ЧерепахаHG как внешний инструмент.
Контроль версий был бы моим последним вариантом отключения плагина. Я обнаружил, что Eclipse все еще ненадежен, когда дело доходит до синхронизации рабочего пространства с файловой системой. Я не виню вас за то, что вам нужны лучшие инструменты VC, чем те, что есть в текущих плагинах, но Eclipse уже кусал меня в этой области.
Ответы здесь сократили время запуска Eclipse с 20 секунд до менее 4.
Подобный пост: каковы лучшие настройки jvm для eclipse
Eclipse Juno был очень медленным для многих людей, например, переключение редакторов и т. д. Сейчас есть множество исправлений производительности, которые ОЧЕНЬ улучшают ситуацию. См. wiki.eclipse.org/Platform_UI/Juno_Performance_Investigation для инструкций по установке патчей.
Для меня все еще очень медленно, без плагинов. Время запуска неплохое, но каждый раз, когда ему приходится обновлять ссылки на файлы или что-то в этом роде, это занимает неоправданно много времени. Иногда он также задерживается при автозаполнении.
-Xverify:none поможет при запуске.
Примечание. Ранние выпуски Eclipse 4.x имели медленную реализацию графического интерфейса. Это стало лучше с более поздними версиями.
снял галочку "строить автоматически". Зайдите в Project - Build Automatically.
Нельзя, не подлежит ремонту.





Я даю ему тонну памяти (добавляю переключатель -Xmx к команде, которая его запускает) и стараюсь избегать выхода и перезапуска - я считаю, что худшие задержки возникают при запуске, поэтому предоставление ему большого количества ОЗУ позволяет мне продолжать работать дольше, прежде чем он вылетает.
отдай ему все, что можешь. он жадный, а значение по умолчанию (<100 мегабайт) совершенно недостаточно
Закройте все открытые проекты, которые в настоящее время не используются.
Попробуйте отключить режим автоматической публикации во время разработки.
Только что выучил этот трюк другой. Закрытие неоткрытого (у меня на рабочем месте должно быть около 20-30) сразу же заметно повлияло на ситуацию.
Eclipse лениво загружает плагины, а самые распространенные плагины, как Subclipse, ничего не делайте, если вы их не используете. Они вообще не замедляют Eclipse во время выполнения, и это не поможет вам отключить их. Фактически, Mylyn был показан уменьшить объем памяти Eclipse при правильном использовании.
Я запускаю Eclipse с множеством плагинов без какой-либо производительности штраф вообще.
Это не только память, которую вам нужно увеличить с помощью -Xmx переключатель, он же размер пермь ген.. я так думаю проблема была решена в Eclipse 3.4.
Единственный реальный способ ускорить Eclipse со стандартными надстройками - это предоставить ему больше памяти и, в некоторых случаях, доступ к более быстрому пространству хранения / дефрагментированному жесткому диску.
Кроме того, мало что можно сделать с точки зрения производительности: большинство стандартных подключаемых модулей не требуют непрерывных затрат времени выполнения, даже Mylyn относительно быстр.
Также может помочь обновление до последней версии JVM, поддерживаемой на вашем компьютере.
Некоторые люди переходят на более старые версии Eclipse, чтобы повысить производительность. Также может иметь смысл использовать Eclipse classic вместо официальных выпусков.
Хотя не рекомендуется вручную удалять плагины, управляемые p2, я считаю, что регулярная очистка плагинов значительно улучшает производительность и возможность публикации, особенно если у вас есть основная конфигурация eclipse, скопированная и переданная нескольким разработчикам. В этом случае лучше просто заархивировать основную установку eclipse, вместо того, чтобы полагаться на то, что все будут синхронно обновлять свои конфигурации. см. stackoverflow.com/questions/221476/…
Убедитесь, что вы используете Sun JVM для запуска Eclipse.
В Linux, особенно в Ubuntu, Eclipse устанавливается по умолчанию для использования GCJ с открытым исходным кодом, который имеет значительно более низкую производительность. Используйте update-alternatives --config java для переключения на Sun JVM, чтобы значительно улучшить оперативность пользовательского интерфейса в Eclipse.
К настоящему времени вы можете установить openjdk-7, который не сильно отличается от Sun Java 7.
Нет, сборка мусора значительно медленнее в Open по сравнению с Oracle. Это связано с патентными проблемами алгоритмов.
@MarkLopez Не могли бы вы добавить для этого ссылку на авторитетный источник?
IBM JVM использовалась, чтобы превзойти Sun JVM во многих случаях ... времена могли измениться!
В настоящее время (2017 год) вы должны запускать Eclipse с OpenJDK 8 (java -version должен указывать что-то вроде openjdk version "1.8.0_131"). Я обнаружил, что OpenJDK 9 снижает производительность (большую задержку) для многих задач.
Три самых важных фактора, влияющих на скорость Eclipse:
The "same" workspace in Indigo (3.7.2) SR2 loads in 4 seconds, in Kepler SR2 (4.3.2) in 7 seconds and in Luna (4.4.0) in 10 seconds. All are Java EE bundles. Newer versions have more bundled plugins, but still the trend is obvious. (by "same" workspace I mean: same (additionally installed) plugins used, same projects checked out from version control).
Запуск его с помощью последний JDK (Java 14 на момент написания, что не мешает вам компилировать в своем проекте Eclipse любой другой JDK, который вы хотите: 1.4.2, 1.5, 1.6 старше ...)
-vm jdk1.6.0_10\jre\bin\client\jvm.dll
Настройка eclipse.ini (см. этот вопрос для полного eclipse.ini)
-Xms512m
-Xmx4096m
[...]
Аргумент Xmx - это объем памяти, который получит Eclipse (проще говоря). С -Xmx4g он получает 4 ГБ ОЗУ и т. д.
Примечание:
Декабрь 2020 г., Ты делаешь соответствует в комментариях
From version 4.8 (Photon) an up there was a steady speed gain after each version.
The main platform was optimized every release to load faster, enable more features for the dark theme and to add more features for newer Java versions for the Java development tools.
Especially with-in the last 3 versions the startup time was increased a lot. There should be a significant increase in start-up time with the newest version of Eclipse 2020-12.In my experience it started a lot faster with each new version.
But: There are still plug-ins which do not follow the new way of using the Eclipse API and are therefore still slow to start.
Since the change to Java 11 as the minimum runtime version starting from Eclipse version 2020-09 at least the core system uses the newer features of the JVM. It is up to the providers of the other plug-ins to upgrade to newer APIs and to use the full power of modern CPUs (e.g. concurrent programming model).
Что было бы эквивалентом jvm.dll в других операционных системах?
@Dan: От wiki.eclipse.org/…: «jvm.dll в окне, libjvm.so на платформах nix».
@Dan: Не путайте это с libjava.so: В Linux libjava.so зависит от libjvm.so, но обратное неверно: $ readelf -d libjava.soDynamic segment at offset 0x208a8 contains 25 entries:Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libjvm.so] [...]: Когда библиотека содержит такую информацию, ld.so автоматически загружает libjvm.so, когда процесс загружает libjava.so.
@Dan, если не указан аргумент -vm, он по умолчанию будет использовать jvm.dll в Windows и библиотеку по умолчанию для платформы (например, libjvm.so) в других ОС; по ссылке VonC "Но у него могут быть и недостатки, если вы попробуйте переместить память слишком высоко."
@Dan: На моем (MacOS) Snow Leopard в eclipse.ini запись конфигурации была: -vm /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/ Libraries / libjvm.dyl ib
Я бы рекомендовал жить с начальным размером кучи, равным максимальному: -Xms384m -Xmx384m. Таким образом, сборщику мусора не придется останавливать JVM, чтобы время от времени выделять больше памяти.
о да! стартап резко улучшился! но в моем случае это было легко, потому что мой -Xms был слишком низким ... Я получил этот совет от парня, который настраивает среды JBoss. :)
Что вы имеете в виду под "-vm jdk1.6.0_10 \ jre \ bin \ client \ jvm.dll" ?? Я честно не понимаю, куда это идет
@IgorG. вы можете увидеть это в stackoverflow.com/questions/142357/…
«используя последнюю версию Eclipse». По моему опыту, все наоборот. «То же» рабочее пространство в Indigo (3.7.2) SR2 загружается за 4 секунды, в Kepler SR2 (4.3.2) за 7 секунд и в Luna (4.4.0) за 10 секунд. Все это пакеты Java EE. Никогда в версиях не было больше встроенных плагинов, но тенденция все же очевидна. (Под «той же» рабочей областью я подразумеваю: используются те же (дополнительно установленные) плагины, те же проекты, проверенные из системы контроля версий)
В Oracle Java 8 больше нет опции PermSize (вы можете оставить ее, она будет проигнорирована)
@ DavidBalažic хорошие моменты. Вы можете редактировать и добавлять их в этот ответ, которому более пяти лет.
@VonC, если вы автор ответа, отредактируйте его. Мои правки в любом случае потребуют экспертной оценки. (есть ли пользовательские функции обмена сообщениями на SO?)
@ DavidBalažic нет, это ответ сообщества вики: отредактируйте :)
Я добавил только немного о MaxPermSize, поскольку мой другой комментарий касался времени запуска, а не общей производительности, которая является темой этого вопроса.
В Java 8+ используйте -XX:MaxMetaspaceSize вместо -XX:MaxPermSize.
Закройте неиспользуемые проекты, отключите проверку орфографии и другие ненужные проверки.
К вашему сведению: Eclipse 2019.09 (v4.13) запускается за 13 секунд для той же рабочей области, что и раньше. И это более новый и быстрый ПК ... JDK - это версия 11.0.5
Начиная с версии 4.8 (Photon) и выше, после каждой версии наблюдалось стабильное увеличение скорости. Основная платформа оптимизировалась с каждым выпуском для более быстрой загрузки, включения большего количества функций для темной темы и добавления дополнительных функций для новых версий Java для инструментов разработки Java. Особенно в последних 3 версиях время запуска было значительно увеличено. Время запуска новейшей версии Eclipse 2020-12 должно значительно увеличиться.
@Udo Это здорово! Но разве «значительное увеличение времени запуска» - это хорошо? То есть запускается медленнее?
По моему опыту, с каждой новой версией все запускалось намного быстрее. Но: Есть еще плагины, которые не следуют новому способу использования Eclipse API и поэтому все еще медленно запускаются. После перехода на Java 11 в качестве минимальной версии среды выполнения, начиная с версии Eclipse 2020-09, по крайней мере, основная система использует новые функции JVM. Поставщики других подключаемых модулей должны обновиться до более новых API и использовать всю мощь современных процессоров (например, модель параллельного программирования).
@Udo ОК, спасибо за отзыв. Я включил ваши комментарии в ответ для большей наглядности. Бесплатное бесплатное редактирование, если вам нужно.
Еще одна хитрость - отключить автоматические сборки.
Еще один прирост производительности можно получить, отключив оформление этикеток.
(Windows -> Preferences; General -> Appearance -> Label Decorations)
и отключив неиспользуемые возможности при запуске
(Windows -> Preferences; General -> Startup and Shutdown).
Вы также можете получить дополнительную производительность, выбрав другую стратегию сборки мусора в зависимости от вашей JVM.
Если вам надоели циклы перезапуска, вы можете использовать JavaRebel из ZeroTurnaround. Это сократит ваше время, затрачиваемое на перезапуск сервера / клиента.
Попробуйте DCE VM вместо JavaRebel, если вы ищете альтернативу OpenSource. - ssw.jku.at/dcevm
Мне нравится совет по запуску и завершению работы.
Этот ответ будет более полезным, если вы дадите список декораторов, которые полезно сохранить. Для меня это как минимум SVN и некоторые декораторы ошибок.
DCE VM "Примечание. Последнее обновление 26 Java версии 1.6 несовместимо с DCE VM. Поддерживаются все более старые версии Java 1.6."
Будьте осторожны, чтобы не удалять украшения с завязанными глазами (как я однажды сделал и потерял некоторую важную информацию, такую как метки git и т. д., См .: stackoverflow.com/questions/50861795/…)
Я отключил все неиспользуемые параметры в Windows> Настройки> Общие, и это оказывает огромное положительное влияние на производительность, eclipse по-прежнему работает медленно при переключении вкладок, я не хочу увеличивать память, но при прокрутке он намного быстрее. Спасибо за подсказки.
Я также настраивал vmargs и прочее. Но что действительно ускорило работу Eclipse в Windows, так это «правильная» конфигурация антивирусного программного обеспечения. Вам необходимо отключить проверку упакованных файлов по запросу. jar, а многие файлы, относящиеся к java, упакованы с помощью алгоритма PKZIP для экономии места. Поскольку Eclipse использует множество java-файлов, антивирус пытается индивидуально распаковать и просканировать каждый из них. Итак, для платформы Windows: отключите сканирование упакованных файлов по требованию, иначе Eclipse будет работать необычно медленно. Имейте в виду, что отключение этого параметра, к сожалению, делает вашу систему более слабой против атак, большинство вредоносных программ используют упаковщики.
Внесение в белый список бывших Eclipse, Java и Javac в Microsoft Security Essentials действительно имело самое большое значение. Запуск увеличился с ~ 3 минут до менее 30 секунд.
Это очень хорошая идея, в настоящее время я также использую исключительно Microsoft Security Essentials для своих установок Windows. Белый список намного лучше, чем отключение сканирования всего упакованного содержимого, поскольку вредоносные программы также входят в эту форму.
Есть еще одна вещь, которая действительно ускоряет Eclipse как в Windows, так и особенно в Linux, - это размещение JVM на RAM-диске.
Для Windows вы можете использовать коммерческий Драйвер RAM-диска от Qsoft.
Для Linux используйте любой из способов, описанных в многочисленных статьях в Интернете. Важно предоставить на RAM-диске дополнительное пространство, которое на 10% больше, чем размер JVM.
Проверить это. Это действительно имеет значение.
Вы можете уточнить? Вы хотите поместить папку target / bin на ramdisk?
вы просто копируете все содержимое JRE или каталога JDK после установки на ваш ramdisk. Затем в eclipse.ini вы добавляете параметр -vm <путь к jdk на ramdisk> /jre/bin/server/jvm.dll (windows) или jvm.so для linux
@DarkoMiletic, но как заставить его сохраняться?
@StackOverflowed 2 варианта: 1) не сохранять его (JVM не меняется, поэтому вы можете просто копировать его вручную каждый раз при запуске машины) или 2) при использовании ImDisk, например, KrishPrabakar рекомендует несколько комментариев, есть инструкции по сохранению здесь: reboot.pro/topic/15593-faqs-and-how-tos
Как это может иметь какое-либо значение на Linux-машине с приличным количеством оперативной памяти, если jvm не вымывается из кеша постоянно? Не могли бы вы просто сделать grep -r или, возможно, использовать vmtouch для загрузки страниц в кеш файловой системы?
1.) Потому что алгоритм подкачки Linux не идеален. 2.) Он жертвует производительностью Java ради производительности в других областях.
Обратите внимание, что Ubuntu теперь имеет встроенный RAM-диск в / dev / shm. Вы можете скопировать туда свой JDK при загрузке. Увеличение производительности на 20-30%.
Основываясь на предложении @DominicCerisano, я написал об этом сообщение на носителе, поэтому проверьте его medium.com/@darko.miletic/…
Спасибо @ Darko.Miletic. Просто обратите внимание, что с появлением Optane все хранилища превращаются в RAM-диски, что значительно улучшит общую производительность системы, даже Eclipse!
Кто-нибудь проверял, лучше ли это, чем предварительная загрузка всех файлов из JDK в кеш диска (например, find /usr/lib/jvm -type f -print0 | xargs -0 wc -l > /dev/null)? Мне трудно поверить, что размещение двоичных файлов JVM в tmpfs улучшит производительность по сравнению с содержимым тех же файлов в кеше системного диска. Конечно, если у вас недостаточно оперативной памяти, использование tmpfs для JVM заставляет ядро жертвовать общей производительностью для JVM. См. Также: unix.stackexchange.com/questions/30286/…
Отключите антивирусные сканеры или, по крайней мере, настройте любой антивирусный сканер, чтобы он не сканировал файлы JAR при доступе для чтения.
Спасибо за подсказки. Эти варианты (упомянутые выше) мне очень помогли:
Окна:
Увеличение памяти и в отношении моей обновленной версии Java в eclipse.ini:
-Dosgi.requiredJavaVersion=1.6
-Xms512m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
-Xverify:none
Кроме того, поскольку мы оптимизируем скорость, установка -Xms на то же значение, что и -Xmx, заставляет JVM запускаться с максимальным объемом памяти, который ей разрешено использовать.
Linux / Ubuntu:
С использованием
update-alternatives --config java
Зачем вам устанавливать XmX на 512 м?
Выполнение вашей команды в Ubuntu приводит к следующему: «Нечего настраивать».
@ Игорь, размер кучи (-XmX) зависит от памяти вашей системы. Когда я задал вопрос, 512 м было оптимальным значением для моего старого нетбука WinXP. Подробнее здесь: stackoverflow.com/questions/4304312/…
Я имел в виду запуск альтернативных обновлений --config java. Это не связано с Eclipse.ini
Ну и «настраивать нечего». значит все в порядке.
Инструмент «обновление-альтернативы» не имеет к этим настройкам никакого отношения. Если появляется сообщение «нечего настраивать», это означает, что у вас установлена / связана только одна Java-версия, поэтому вы не можете выбрать другую установку. Отметьте "man update-alternatives"
Хотя не имеет прямого отношения к Eclipse:
Если вы используете Windows 7 (и, предположительно, Windows Vista), обязательно отключите индексирование файлов в папке рабочего пространства, если ваши материалы находятся в месте по умолчанию - в вашей домашней папке. Windows по умолчанию индексирует все в вашей домашней папке, и обычно это пустая трата для вашего рабочего пространства. (Щелкните правой кнопкой мыши папку рабочей области в проводнике, Характеристики -> Передовой.)
Этот метод можно распространить даже на весь системный диск, а также на другие диски. Лучше всего сделать это после новой установки, потому что процесс может занять больше времени, если у вас больше файлов. Щелкните правой кнопкой мыши целевой диск, в нижней части вкладки «Общие» снимите флажок «Разрешить файлам на этом диске индексировать содержимое в дополнение к свойствам файлов». Начнется рекурсивный процесс, который может занять много времени, но в конце концов принесет плоды. (Хотя это совсем другое дело, но я бы сравнил этот метод с монтированием файловой системы с опциями «noatime» и «nodiratime» в Linux. Это тоже может творить чудо.)
Я бы посоветовал оставить индексатор включенным, за исключением того, что вы обычно не используете функцию поиска, встроенную в Windows. Для рабочего места было бы хорошо выключить.
Перейдите в Окна -> Предпочтения -> Проверка и снимите отметку со всех validators, которые вам не нужны или не нужны.
Для Eclipse 3.7 вы используете Окна -> Предпочтения -> Общий -> Запуск и выключение.
Что ж, если вы разрабатываете приложение GWT с использованием Eclipse, то это способ:
Ошибка нехватки памяти в Eclipse
Также не забудьте добавить те же аргументы виртуальной машины в конфигурацию размещенного режима.
Не следует недооценивать наличие быстрой машины. 16-32 GB RAM, SSD и приличный процессор ... и who0o0om вот так.
Тема этой темы посвящена «Ускорению Eclipse». Поэтому я серьезно сомневаюсь, что ваше предложение по оптимизации кода IDE поможет здесь. Я согласен с тем, что вам не нужна новейшая система для приличной производительности. Не утверждал этого. Мой резервный ноутбук (на случай, если что-то случится с моим основным ноутбуком) - это MacBook 2008 года (не Pro) с Core 2 Duo, который я обновил до 8 ГБ ОЗУ и 60 ГБ SSD за 100 долларов. Тем не менее, это 10-летний компьютер, работающий под управлением macOS High Sierra и Eclipse PDT с приличной производительностью. То, чего не было бы со стандартной 2 ГБ ОЗУ и жестким диском.
iroybot, вы абсолютно правы. Речь идет о том, как конечный пользователь может бороться с апатичным принятием разработчиками Eclipse невероятно неэффективного кода. Кстати, вы пробовали NetBeans? Он прекрасно работает с 2 ГБ оперативной памяти и жестким диском.
У меня он все еще медленный, для запуска из затмения при холодной загрузке требуется 20 секунд. Есть ли способ сделать так, чтобы для открытия всего потребовалась всего 1 секунда?
Какое оборудование вы используете? Eclipse открывается через 7 секунд на моей коробке, которая представляет собой Intel NUC8i7 с 8-го поколения Coffe-Lake i7-8559U, 64 ГБ довольно медленной оперативной памяти (2400 МГц), быстрый SSD-накопитель Corsair MP600 NVME. И я использую openjdk 15.0.1 на macOS.
Если вы используете Maven и ivy, проверьте их консоли на случай, если они перегружают обработку во время сборки. Я использую ivy, и, кроме того, у меня есть некоторые файлы JAR (внутренние), которые меняются с той же версией, поэтому ему все время приходится тренироваться, чтобы их получить.
Если вы определили свой проект на сетевом диске, вы также столкнетесь с задержкой во время процессов сборки / чтения / записи.
Отключите / удалите плагины, которые вам не нужны.
Близкая перспектива, которая вам не нужна
Закройте неиспользуемые подключения к базе данных
Я реализовал подключаемый модуль, чтобы настроить, какие функции должны быть загружены во время выполнения, чтобы повысить производительность и уменьшить конфликт между различными подключаемыми модулями.
Возможно, вы установили в свой Eclipse множество функций, таких как инструменты разработки Android, инструменты разработки C / C++, плагины PHP, SVN, Git и ClearCase. Следовательно, Eclipse тяжелый и требует много памяти, а некоторые из них используются нечасто.
Таким образом, вы можете использовать мой инструмент для создания различных политик времени выполнения, например, с Android, Git и базовым Eclipse, другой с C / C++, SVN и базовым Eclipse. В следующий раз Eclipse загрузит только указанные функции, если вы используете политику, в которой есть только Android и Git.
Вы можете попробовать и оставить свой отзыв. :)
Название этого инструмента - Расширенный конфигуратор Equinox.
Наряду с новейшим программным обеспечением (последняя версия Eclipse и Java) и большим объемом оперативной памяти вам может потребоваться
ссылка: make-eclipse-ide-быстрее
Итак, в основном совет - отключить большую часть Eclipse?
Попытайтесь настроить свой путь сборки. Автозавершение кода использует много памяти, если оно должно проходить через всю папку вашего проекта.
В особых случаях низкая производительность может быть связана с повреждением баз данных h2 или nwire. Прочтите Пять советов по ускорению Eclipse PDT и nWire для получения дополнительной информации.
Там, где я работаю, мы зависим от виртуальной машины для запуска Debian. Я установил другую версию Eclipse на виртуальную машину для тестирования целей, но это иногда создает конфликты, если у меня работает другая версия Eclipse. Есть общая папка, которую разделяют обе версии Eclipse. Однажды я случайно оставил установку Debian Eclipse в фоновом режиме, что привело к повреждению файлов базы данных.
Добавьте -Xverify:none в свой файл eclipse.ini.
Это значительно сократит время запуска Eclipse (в моем случае на 50%, если не больше). Это укажет виртуальной машине не проверять все загружаемые файлы .class.
Рассмотрим это: Никогда не отключайте проверку байт-кода в производственной системе (как указано в комментариях)
Да, это работает! После добавления этой опции мой RAD загружается значительно быстрее.
Это имеет огромное значение. Я потратил последние 30 минут на поиски этого варианта. Он у меня установлен на работе, но не дома. :(
Я добавил это, и он вернул Ошибка при инициализации виртуальной машины. Указаны несовместимые минимальный и максимальный размер кучи.
Какова цель проверки класса? Если мы отключим при запуске, когда Eclipse получит возможность это сделать?
Когда я добавляю эту опцию (с использованием STS), я получаю такую ошибку: обнаружено, что задание все еще выполняется после выключения платформы. Задания должны быть отменены плагином, который запланировал их во время выключения: org.eclipse.core.internal.registry.osgi.ExtensionEventDispat cherJob
Проверка класса @RajkumarMasaniayan - это шаг, который гарантирует, что запускаемый код не пытается обмануть JVM.
В основном, если вы отключите проверку класса, любой Java-класс с эксплойтом может покинуть виртуальную машину Java (JVM) и выполнить любой код, который он хочет, в качестве вашей учетной записи. В общем, если ваша безопасность зависит от включения JVM, не отключайте проверку. Однако, учитывая, что плагины Eclipse могут записывать новые файлы в файловую систему и запускать любые исполняемые файлы, у вас будет много поверхности для атаки даже после проверки. В результате, я думаю, что включение проверки классов в Eclipse на самом деле совсем не улучшает вашу безопасность.
@MikkoRantalainen, какой класс с эксплойтом можно "пропустить" тогда, когда включена проверка класса? другими словами, когда проверка класса предотвратит эксплойт? @ ThorbjørnRavnAndersen у вас есть пример "кода, который нужно запустить"? Плагин eclipse, ...? Этот вариант выглядит интересным, но, возможно, к нему следует относиться с осторожностью.
@ el-teedee, blogs.oracle.com/buck/…
Например, даже если проверка байт-кода является только частичной, может быть получен полный доступ для чтения / записи к файловой системе: tools.cisco.com/security/center/viewAlert.x?alertId=5148
Ух ты, это дало мне примерно 80% улучшения при запуске
имеет значение, где в файле .ini вы поместили оператор -Xverify: none?
@JesseBoyd Не должно
Eclipse все время работал медленно, несмотря на то, что для перезапуска выделялся огромный объем памяти в .ini, и даже не использовались все мои системные ресурсы (поэтому я понятия не имею, что он делал). Казалось, это исправило.
Обратите внимание, что эта конфигурация устарела и запрещена в последней версии Java 14.
-Xverify:none устарел с Java 13
Я испытал значительное улучшение производительности при ограничении количества открытых вкладок (в прошлом у меня часто было открыто более 30 вкладок). Вы можете позволить Eclipse справиться с этим автоматически:
Окно -> Предпочтения -> Редакторы -> закрывать редакторы автоматически
8 открытых вкладок - это сумма до появления знака >>, поэтому я предпочитаю оставлять его на 8.
При открытии большего количества вкладок будут закрыты те, к которым недавно открывались.
-> Когда все редакторы грязные или приколоты
Если в нем есть несохраненные изменения, вы можете запросить сохранение и повторное использование (вкладка будет закрыта, на ее месте откроется новая). Или вы можете открыть новый конец редактора, увеличив количество открытых вкладок (ненавязчивый выбор).
Если вы хотите, чтобы некоторые вкладки никогда не закрывались автоматически, вы можете закрепить их. Это можно сделать, щелкнув значок булавки (крайний правый значок на панели инструментов с «редактором булавки» в качестве всплывающей подсказки).
Если вы не привязаны к Eclipse по таким причинам, как работа, некоторые необходимые подключаемые модули \ функции, доступные только через Eclipse и т. Д .; тогда одна из возможных стратегий - полностью избавиться от Eclipse. Это значительно ускорит процесс.
Вы можете переключиться на любую другую IDE или среду разработки, которая делает то, что вам нужно. Одним из примеров может быть NetBeans. Некоторые предлагаемые ускорения также применимы к NetBeans или любой другой среде IDE, если на то пошло.
Один из примеров, который применим непосредственно к Linux, - как можно больше переместить на монтировку tmpfs. Для разработки Java в NetBeans я переместил документацию и исходный код Java на монтировку tmpfs, что привело к огромному увеличению производительности.
Точно так же во время разработки на C++ я буду следить за тем, чтобы все дерево исходных текстов находилось в моем монтировании tmpfs, если это возможно. Хотя я не проводил тщательного тестирования производительности сборки, несколько тестов на базе кода разумного размера (несколько сотен исходных файлов + заголовки) привели к сокращению времени компиляции более чем на 50%.
Помните, что при использовании этого метода ваши данные будут сохраняться при отключении питания нет. Для борьбы с этим можно создать сценарий, который rsync монтирует tmpfs в некоторый резервный каталог, и добавить этот сценарий как задание cron, которое запускается каждую минуту.
Что за чушь. Переход на текстовый редактор теряет все (огромные) преимущества производительности среды IDE, переход на NetBeans ... это просто еще одна среда IDE, имеющая собственные проблемы с производительностью.
Ramdisks / запланированные задания фактически доступны на многих платформах. Отлично подходит для производительности, но это «решение для мастеров» - и его следует использовать только в том случае, если вы готовы писать и тестировать сценарии, чтобы сделать его (по крайней мере, в некоторой степени) устойчивым к потере мощности. Наверное, лучше потратить свое время = деньги на лучшее готовое решение; SSD.
@ThomasW Во-первых, где я предлагаю не использовать IDE? Из моего ответа: Вы можете переключиться на любую другую IDE или среду разработки, которая делает то, что вам нужно.. Для целей мой собственный по крайней мере NB работает лучше, чем Eclipse, по крайней мере, с тех пор, как я последний раз пробовал Eclipse; независимо от использования SSD / ramdisk. Что касается вашего последнего комментария: я полностью согласен, но это совсем другое дело; это было просто предложение. Наконец, заявленное ускорение компиляции, которое я наблюдал, по сравнению с моей компиляцией с моего SSD.
У всех IDE есть бородавки, морщинки и застревания в стандартном рабочем процессе. Прелесть Eclipse в том, что это НЕ IDE. Это платформа для создания пользовательских IDE и оптимизированных рабочих процессов.
Попробуйте и это тоже, это улучшит производительность:
cleaning up indexes - {workspace path}.metadata.plugins\org.eclipse.jdt.core cleaning up history - {workspace path}.metadata.plugins\org.eclipse.core.resources.history
Очистка указанных выше папок не повлияет на файлы проекта.
Закройте контурный вид, чтобы ускорить переключение между редакторами. Каждый раз, когда вы переключаетесь на другую вкладку или открываете файл, представление структуры должно обновляться, что на моем компьютере каждый раз занимало около 1 секунды. Это всего лишь 1 секунда, но если вы будете менять вкладки очень часто, как я, это избавит вас от головной боли.
Я перепробовал множество вариантов, увеличив пространство кучи и изменив настройки сборщика мусора, чтобы ускорить Eclipse.
Но для моей локальной разработки, по моему скромному мнению, я увидел, что отключение сборщика мусора JVM работает лучше всего для меня.
Функция автозаполнения Mylyn работает без проблем, а часть (Не отвечает) была значительно уменьшена.
Ниже приведен снимок моего файла eclipse.ini.
-vm
--C:\JAVA\jre\bin\server\jvm.dll
C:\JAVA8x64\jre\bin\server\jvm.dll
-vmargs
-Xnoclassgc
-Dosgi.requiredJavaVersion=1.6
-Xms256m
-Xmx1024m
Я пробовал использовать JDK 6 и JDK 8, и в обоих случаях заметил значительное ускорение.
-Xnoclassgc также останавливает CPU от гонок, когда eclipse бездействует.
**Tips for making Eclipse IDE Faster**
Eclipse будет работать быстрее при работе с небольшими проектами. Но когда вам придется работать с большим проектом, вас раздражает его скорость. Даже с огромной оперативной памятью вы не будете довольны ее скорость. Ниже шаги помогут затмению увеличить свою скорость
Удалите нежелательную активацию некоторых плагинов при запуске, перейдя в windows–> предпочтения–> Общие–> Запуск и завершение работы также убедитесь, что вы не используете эти плагины ни в одном из своих представлений.
Отключение декораций этикеток, которые менее полезны для вас, также поможет вам повысить производительность. Перейти к Windows–> Предпочтения–> Общие–> Внешний вид–> Этикетка -> Украшения
Закройте ненужные проекты и используйте опцию рабочего набора для плавного перехода от одной группы проектов к другой.
Настройте eclipse.ini, который будет доступен в месте установки eclipse.
Configuring eclipse.ini should be based on your RAM
-Xms256m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
Также посмотрите http://wiki.eclipse.org/Eclipse.ini для получения дополнительных опций настроить eclipse.ini.
Не оставляйте в редакторе открытыми много вкладок. Лучше иметь около 20 вкладок. Регулярно закрывайте неиспользуемые вкладки. Чтобы открыть ресурс, мы всегда можем использовать ctrl + shift + R и ctrl + shift + T (ресурс Java) вместо открытия множества вкладок. Я ощутил значительное улучшение производительности при ограничении количества открытых вкладок (в прошлом у меня часто было открыто более 30 вкладок). Вы можете позволить eclipse справиться с этим автоматически: Окно-> Настройки-> Редакторы-> закрыть редактирует автоматически 8 открытых вкладок - это сумма до появления знака >>, поэтому я установил 14 в качестве значения по умолчанию. При открытии большего количества вкладок будут закрыты те, к которым недавно открывались. Когда все редакторы грязные или заколоты. Если в нем есть несохраненные изменения, вы можете запросить сохранение и повторное использование (вкладка будет закрыта, на ее месте откроется новая). Или вы можете открыть новый конец редактора, увеличив количество открытых вкладок (ненавязчивый выбор). Если вы хотите, чтобы некоторые вкладки никогда не закрывались автоматически, вы можете закрепить их. Это можно сделать, щелкнув значок булавки (крайний правый значок на панели инструментов с «редактором булавки» в качестве всплывающей подсказки).
Перейти к Windows -> Настройки -> Проверка и снимите галочки со всех валидаторы ты не хочешь или не нуждаешься.
Перейдите к Windows -> Настройки -> Общие -> Внешний вид -> и снимите галочку с любой анимации., который вам не нужен или не нужен.
Перейдите к Windows -> Настройки -> Maven и отметьте «не обновлять зависимости автоматически»..
Попробуйте эти. Есть два пути.
Первая процедура
Обратитесь к этой статье.
http://www.javacodegeeks.com/2014/06/the-real-way-to-make-eclipse-run-faster-on-ubuntu.html
Вторая процедура.
Выполните команду в терминале.
ramdisk
чтобы получить лучшую производительность и быстрый отклик для Ubuntu.
Ramdisk - это часть системной памяти. Ubuntu по умолчанию использует половину физической памяти (RAM) в качестве ramdisk, и она монтируется на
/dev/shm
, его можно использовать так же, как и обычное дисковое пространство (создавать файлы и папки и управлять ими с большей производительностью, чем если бы они хранились на жестком диске). Если ramdisk использует более половины RAM, данные будут перемещены в область подкачки. Если ramdisk использует меньше, оставшиеся могут делать то, что делает RAM.
Установить верхний предел RAM-диска
Как было сказано выше, ramdisk по умолчанию может использовать половину RAM. Если вы хотите изменить верхний предел, выполните следующие действия:
Отредактируйте / etc / fstab вашим любимым редактором:
gksudo gedit / etc / fstab
Найдите эту строку и измените, чтобы она выглядела так (добавьте эту строку, если она не существует, и измените 512M на то, что вам нравится):
tmpfs / dev / shm tmpfs по умолчанию, размер = 512M 0 0
Перезагрузите или перемонтируйте
/ dev / shm
Смонтировать / tmp на ramdisk
Чтобы упростить использование, вы можете смонтировать каталог в
/dev/shm
с помощью следующих команд:
mkdir / dev / shm / tmp
chmod 1777 / dev / shm / tmp
монтировать --bind / dev / shm / tmp / tmp
в ubuntu 15.4 это так хорошо, если у вас есть хотя бы 8 ГБ оперативной памяти. Остальные мои программы после этой операции стали шустрее. Большое спасибо :)
Я выполняю несколько шагов, если Eclipse работает медленно:
Откройте текущий рабочий проект и закройте оставшийся. Если между ними есть какая-либо зависимость, просто откройте во время работы. Если все являются проектами Maven, то с локальным изменением майнера в файлах pom вы также можете сделать их отдельными проектами. Если вы работаете над независимыми проектами, всегда работайте над любым одним проектом в рабочей области. Не храните несколько проектов в одной рабочей области.
Измените фильтры типов. Это упрощает указание конкретных пакетов для постоянного обращения.
По моему опыту, не меняйте параметры JVM памяти. Это вызывает множество неизвестных проблем, за исключением случаев, когда вы хорошо знакомы с параметрами JVM.
Всегда снимайте флажок автоматической сборки. В частности, автоматическая сборка проекта Maven бесполезна.
Закройте все открытые файлы, просто откройте текущие рабочие файлы.
Используйте наборы Go Into Work. Вместо полного верстака.
Большинство компонентов вашего приложения вы также можете реализовать и протестировать автономно. Узнайте, как работать в автономном режиме без развертывания сервера, это сделает вашу работу простой и быстрой. - Недавно я работал над объектами гибернации для своего проекта, два дня я работал на сервере. то есть я изменил сущности и снова собрал и развернул на сервере, это убивает все мое время. Итак, я создал простое автономное приложение JPA и очень быстро завершил свою работу.
Лучшие практики в этом потоке реализованы в бесплатном Оптимизатор для Eclipse, от ZeroTurnaround.
От чего это помогает?
Для получения дополнительной информации ознакомьтесь с этим статья из RebelLabs.
Увеличьте объем оперативной памяти до более чем 8 GB и отключите проект автоматической сборки. Это сработало для меня.
Эта статья Как быстро сделать затмение быстрее очень полезна. Я попробовал несколько советов, и это правда; это заставило мой Eclipse работать быстрее.
Проблема может быть в кеше Java или во временных файлах Java.
Откройте панель управления в Windows, найдите панель Java Щелкните Настройки на вкладке Общие, Удалите временные файлы и установите объем дискового пространства для хранения временных файлов. файлы размером не более 10000 МБ. Перезапустить затмение. Восстановите все валидаторы, и вы увидите, что скорость вашей IDE Eclipse в порядке.
ВАЖНЫЙ. Если вы используете 64-разрядную версию Windows, распакуйте eclipse в файлы c: \ Program и настройте Windows Deffender, чтобы исключить папку Eclipse / sts и исключить программу. Если вы извлечете его в другую папку, ваше затмение будет работать как 32-битное приложение.
Есть еще одно решение Удалите все файлы из этих двух папок
.metadata.plugins \ org.eclipse.core.resources.history .metadata.plugins \ org.eclipse.jdt.core
Это помощь для первых мам. Но он все еще остается медленным
В Windows 8. Откройте панель управления. Найдите Защитника Windows. Перейдите в настройки Исключить все папки, в которых находится ваш Spring / Eclipse и рабочая область.
Вы также можете просто исключить процесс «eclipse.exe».
У меня было аналогичное замедление, и это исправление применяется только в том случае, если вы используете вариант C / C++ Eclipse. Для C/C++ вы можете отключить индексатор, известный из-за чрезмерной нагрузки на процессор. Это эквивалент VS intellisense.
Чтобы отключить индексатор CDT, перейдите к Window->Preferences, на вкладке C/C++ выберите «Индексатор» и снимите флажок «Включить индексатор».
Мы используем GIT как CVS и gradle как инструмент сборки.
Симптом
В моем случае один конкретный проект с> 20 000 файлов завис при использовании иерархического представления при навигации по каталогу с большим количеством файлов.
Исправить
Помимо настройки eclipse.ini для использования памяти. Я настроил "Параметры запуска и выключения". Мой Eclipse сейчас пылает быстро.
Некоторые подробности могут быть интересны: когда эти плагины теперь включены? При первом использовании или необходимо включить вручную и не может использоваться в вашей настройке в течение всего срока службы работающего экземпляра? Если автоматически, распознаются ли задержки при первом использовании плагина?
@ ThorstenSchöning - Эти плагины включены по умолчанию. Вы всегда можете включить или отключить их вручную в зависимости от ваших предпочтений. Обратите внимание, что с помощью вышеуказанного варианта вы не удаляете свои плагины, а только отключаете их при запуске, чтобы eclipse загружался быстро.
Может быть несколько вещей, которые могут задержать начало и выход затмения. Один из них похож на то, что есть у нас в Windows. Отключение анимации Windows и отключение действий при запуске в определенной степени ускоряет работу окон.
Подобно тому, что в eclipse, у нас может быть то же самое: Windows-> General -> Preferences -> Appearance -> OFF некоторых декоративных опций. Это дало бы небольшой импульс, но не сильно повлияло бы.
На мой взгляд, проекты в рабочем пространстве, которое вы, возможно, создали, должны быть в определенной степени ограничены или, скорее, создавать новое рабочее пространство, если проектов больше. Например, когда вы пытаетесь запустить один проект на сервере, это занимает меньше времени по сравнению с запуском нескольких проектов на одном сервере.
Для пользователей Windows:
Если вы перейдете в диспетчер задач, выберите приложение eclipse и щелкните маленькую стрелку рядом с ним, вы обычно увидите только один подпроцесс, появляющийся под «eclipse.exe». Однако в моем случае, если у вас есть несколько экземпляров «Java Platform SE Binary», закройте их все. По какой-то причине у меня три из них работали в фоновом режиме, хотя в настоящее время у меня не было никаких проектов. Тем не менее, это повысит производительность до того уровня, который, вероятно, был при первой установке eclipse на свой компьютер.
Если после внесения изменений вы больше не можете запускать проект, попробуйте перезапустить eclipse.
У тебя есть огромный баран? Создайте рамдиск и поместите туда свой
Убедитесь, что вы сохраняете свои изменения обратно на жесткий диск или фиксируете их в VCS, чтобы избежать потери данных при отключении питания.
Установите дополнительную (еще 4 ГБ) ОЗУ. Я несколько серьезно. Eclipse хорошо работает на компьютере с Windows 7 объемом 3 ГБ. Не ахти с меньшим объемом памяти.