Показаны сообщения с ярлыком eclipse. Показать все сообщения
Показаны сообщения с ярлыком eclipse. Показать все сообщения

понедельник, 27 июня 2011 г.

ускорение эклипс (eclipse speedup)

Описанный ниже рецепт поможет сделать эклипс(даже indigo) более отзывчивым (у меня он стал в разы отзывчивее при большом количестве файлов!), он будет работать на 40% быстрее и даже быстрее запускаться!

Но выигрыш в скорости будет лишь, если ваша машина(компьютер) удовлетворяет таким условиям:
1) У вас должен быть многоядерный процессор(или многопроцессорный компьютер)
2) Вы должны запускать эклипс под Java 6 (jdk1.6.0_14 или выше)

Что надо сделать:
Заменить в файле eclipse.ini (лежит в директории, куда установлен эклипс) содержимое секции "vmargs":
To increase performance of your eclipse, just replace "vmargs" section in "eclipse.ini" file as shown below
-vmargs
-Dosgi.requiredJavaVersion=1.6
-XX:+UnlockExperimentalVMOptions
-XX:+UseG1GC
-Xms256m
-Xmx640m
-XX:+AggressiveOpts
-XX:MaxPermSize=256m

это ДЕЙСТВИТЕЛЬНО РАБОТАЕТ!!!

воскресенье, 19 июля 2009 г.

eclipse variables

Раньше я не понимал, почему в эклипсе все пути организованы относительно workspace-а, а не просто используются абсолютные пути файловой системы. Теперь я понимаю, насколько это удобно!

Например, если носишь свои проекты на флешке, и подключаешь их в эклипс, можно ссылаться к ресурсам относительно workspace-а, и не думать, какую же букву windows присвоила флешке на этот раз.

Чтобы сослаться на какой-то ресурс относительно workspace-а, можно использовать такую переменную: ${workspace_loc}/choose-your-destiny/core/templates/tag_list.html или так: ${workspace_loc:/choose-your-destiny/core/templates/tag_list.html} (то есть на конкретный ресурс внутри проекта)

Единственная проблема, с которой я столкнулся - не везде эти переменные поддерживаются. Но, поскольку eclipse - opensource, можно запросто добавить поддержку variables в любое место!

Делается это вот так:
String absolutePath = VariablesPlugin.getDefault().getStringVariableManager().performStringSubstitution(pathWithVariable);


P.S. Вообще, в последнее время мне кажется, что это не eclipse подстраивается под тебя, а ты подстраиваешься под нее. Многие тулзы подстраивают тебя и твой проект под себя, например, мавен.

Bug in eclipse 3.5 java ee

Обнаружил очень неприятный баг в эклипс-е:
не работает "угадывание" параметров, подставляются просто имена параметров
[does_not_work.png]
В eclipse 3.5 classic эта опция работает как и ожидается

четверг, 25 июня 2009 г.

swt label в eclipse

Бывает ли у вас ситуация, описанная ниже?
Когда пользуетесь eclipse-ом, в строке статуса (внизу) отображается нужная Вам информация, и хочется ее скопировать.

У меня личто так всегда бывает! Видит око, да глаз не имет!

Ну и решил я в этот раз разобраться, как же от туда взять этот текст. Например, XPath, при редактировании XML-я. Долго копался в коде, потом обнаружил, что все таки это Label (в эклипсе свой CLabel с блекджеком). А у лэйбла текст не копируется!! :-) В инете везде так и пишут: если хочешь лейбл с возможностью копирования текста, юзай виджет Text в режиме ридонли.

Короче, я так и не нашел универсального способа скопировать от туда текст. Досадно :-)

P.S. Вот о каком лейбле я гутарю:


P.P.S. Идея! А засабмичу ка я фич реквест или баг репорт! :-)

пятница, 20 марта 2009 г.

Как можно ускорить свой eclipse на 40%

Сразу говорю, что это лишь частичный перевод этой статьи.

Описанный ниже рецепт поможет сделать эклипс более отзывчивым (у меня он стал в разы отзывчивее при большом количестве файлов!), он будет работать на 40% быстрее и даже быстрее запускаться!

Но выигрыш в скорости будет лишь, если ваша машина(компьютер) удовлетворяет таким условиям:
1) У вас должен быть многоядерный процессор(или многопроцессорный компьютер)
2) Вы должны запускать эклипс под Java 6 (я лично пользую недавно вышедший jdk1.6.0_12)

Что надо сделать:
Дописать в файл eclipse.ini (лежит в директории, куда установлен эклипс) следующие настройки:
-XX:-UseParallelGC -XX:+AggressiveOpts -XX:-UseConcMarkSweepGC

Я еще прибавил памяти на всякий случай. Сейчас мои настройки выглядят так:

-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512M
-framework
plugins\org.eclipse.osgi_3.4.3.R34x_v20081215-1030.jar
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms256m
-Xmx600m
-XX:-UseParallelGC -XX:+AggressiveOpts -XX:-UseConcMarkSweepGC


Как это работает:
-XX:-UseParallelGC
Этот параметр заставит сборщик мусора работать в параллельном потоке, что сильно разгрузит основной поток (вот тут то и пригодится второе ядро процессора)

XX:-UseConcMarkSweepGC
Эти настройки для сборщика мусора позволят эклипсу быть более отзывчивым.

-XX:+AggressiveOpts
Включает оптимизацию производительности компилятора..

Вобщем, какая разница, что эти настройки делают :-) Главное, что это ДЕЙСТВИТЕЛЬНО РАБОТАЕТ!!!

вторник, 17 марта 2009 г.

Небольшое исследование на тему "Введение в Equinox"

Читаю сейчас очень интересную статью Введение в Equinox.
Попытался сделать, как там написано, и наткнулся на некоторые проблемы.

Создал свой "бандл", запустил osgi, загрузил свой bundle


и пытаюсь его запустить
Получаю такую картину:

Не может найти класс. Что-то это как-то подозрительно. Потому, что этот класс есть в jar файле самого фреймворка osgi.

Не долго думая, я попробовал сгенерировать такой bundle используя wizard эклипса.
Это оказалось элементарно просто!

Выбираем в меню New->Project->Plug-in Project


Далее надо написать имя проекта и OSGi в качестве платформы


Далее надо нажать два раза "Next" и выбрать, что нам плагин нужен на основе примера (бандл)


Обратите внимание, что в файле MANIFEST.MF есть такая строчка:


Кстати, в этом манифесте можно сделать "экспорт" и получить готовый JAR файл:


Загрузим получившийся плагин и попробуем запустить:



Работает!! Супер!

Вывод: надо прописывать "Import-Package:" в манифест файле, чтобы все было ОК ;-)