Monday, February 23rd, 2009
Про апгрейченый скрипт запуска AIR дебагера:
/*
* Menu: Kill adl an run debug
* Key: M3+d
* Kudos: Ilja Panin http://the33cows.com
* DOM: http://download.eclipse.org/technology/dash/update/org.eclipse.eclipsemonkey.lang.javascript
*/
var workspace = Packages.org.eclipse.core.resources.ResourcesPlugin.getWorkspace();
var configToRunName = "[YOU_DEBUG_CONFIGURATION_NAME]";
function main()
{
Packages.java.lang.Runtime.getRuntime().exec("tskill.exe adl");
loadBundle("org.eclipse.debug.ui");
var ProgressMonitorDialog = Packages.org.eclipse.jface.dialogs.ProgressMonitorDialog;
var IRunnableWithProgress = Packages.org.eclipse.jface.operation.IRunnableWithProgress;
var runnableWithProgress = new IRunnableWithProgress({run: runfun});
var monitorDialog = new ProgressMonitorDialog(window.getShell()).run(true, true, runnableWithProgress);;
}
function runfun(monitorDialog)
{
monitorDialog.beginTask("Run debbuger ...", 1);
var plugin = Packages.org.eclipse.debug.core.DebugPlugin;
var launchManager = plugin.getDefault().getLaunchManager();
configurations = launchManager.getLaunchConfigurations();
var conf;
for (var i in configurations)
{
if (configurations[i].getName() == configToRunName )
{
conf = configurations[i];
}
}
if (conf)
{
var launch = Packages.org.eclipse.debug.ui.DebugUITools.buildAndLaunch(conf, "debug", monitorDialog);
}
else
{
debug("project not found!");
}
monitorDialog.done()
}
function debug(s)
{
out.println(s);
} |
/*
* Menu: Kill adl an run debug
* Key: M3+d
* Kudos: Ilja Panin http://the33cows.com
* DOM: http://download.eclipse.org/technology/dash/update/org.eclipse.eclipsemonkey.lang.javascript
*/
var workspace = Packages.org.eclipse.core.resources.ResourcesPlugin.getWorkspace();
var configToRunName = "[YOU_DEBUG_CONFIGURATION_NAME]";
function main()
{
Packages.java.lang.Runtime.getRuntime().exec("tskill.exe adl");
loadBundle("org.eclipse.debug.ui");
var ProgressMonitorDialog = Packages.org.eclipse.jface.dialogs.ProgressMonitorDialog;
var IRunnableWithProgress = Packages.org.eclipse.jface.operation.IRunnableWithProgress;
var runnableWithProgress = new IRunnableWithProgress({run: runfun});
var monitorDialog = new ProgressMonitorDialog(window.getShell()).run(true, true, runnableWithProgress);;
}
function runfun(monitorDialog)
{
monitorDialog.beginTask("Run debbuger ...", 1);
var plugin = Packages.org.eclipse.debug.core.DebugPlugin;
var launchManager = plugin.getDefault().getLaunchManager();
configurations = launchManager.getLaunchConfigurations();
var conf;
for (var i in configurations)
{
if (configurations[i].getName() == configToRunName )
{
conf = configurations[i];
}
}
if (conf)
{
var launch = Packages.org.eclipse.debug.ui.DebugUITools.buildAndLaunch(conf, "debug", monitorDialog);
}
else
{
debug("project not found!");
}
monitorDialog.done()
}
function debug(s)
{
out.println(s);
}
Правила применения:
1.заменяем строку [YOU_DEBUG_CONFIGURATION_NAME] на имя конфигурации запуска приложения. Это имя можно найти в меню “Run -> Open Debug Dialog…”
2. заменяем сочетание M3+d на свое (M3 это alt). Для меня alt+d ближе чем F11 🙂
При выполнении скрипт, убивается процесс AIR дебагера и запускает процесс сборки и новый дебагер.
Posted in AIR, Eclipse, Effective work, Flex Builder 3, Monkey Script | Comments Off on Закрываем И запускаем AIR-debugger с помощью Eclipse Monkey
Sunday, February 22nd, 2009
Flex Builder не умеет закрывать дебагер AIR приложений.
Лично я все время забываю закрывать приложение и каждый раз при запуске получаю сообщение об ошибке. После чего приходится “искать” приложение и закрывать его. Отнимает время и иногда нервирует.
Чтобы облегчить себе работу в закрытии приложения я написал небольшой Eclipse Monkey script:
/*
* Menu: kill adl
* Key: M3+d
* Kudos: Ilja Panin http://the33cows.com
* DOM: http://download.eclipse.org/technology/dash/update/org.eclipse.eclipsemonkey.lang.javascript
*/
function main()
{
Packages.java.lang.Runtime.getRuntime().exec("tskill.exe adl");
}
он убивает запущенный процесс adl.exe(отладчик AIR) легким движением руки ) и экономит время.
В идеале я хотел написать скрипт, который слушает событие эклипса о запуске дебагера, и автоматом дебагер, но не нашел как “достучатся” до дебагера.
upd: чтобы запустить скрипт нужно создать в папке со скриптами(по умолчанию проект monkey папка scripts) js файл, например kill-adl.js в него вставить код. Запускаеться скрипт нажатием alt+d или выбором пункта из меню
Posted in AIR, Eclipse, Effective work, Flex Builder 3, Monkey Script | 4 Comments »
Tuesday, November 25th, 2008
Я нашел свою ошибку при работе с флекс билдером. Я неверно загружал ява классы билдера и поэтому немог к ним нормально обратиться. Правильный вариант выглядит так:
loadBundle("com.adobe.flexbuilder.editors.common");
скачать пример Monkey Script’a , который добавляет цвет в редактор используя диалог выбора цвета из Flex Builder, можно со страницы примеров проекта «monkey-for-flex»
Теперь мы можем гораздо больше!
Posted in Eclipse, Flex Builder 2, Flex Builder 3, Monkey Script, optimization | Comments Off on Eclipse Monkey и Flex Builder
Tuesday, November 4th, 2008
Вчера вернулся из Москвы, куда ездил поработать, погулять и посетить FlexCamp (и даже сделать на нем небольшой доклад).
В Москве был первый раз и Москва мне не понравилась. Я привык к более размеренной жизни и меньшему количеству людей и машин. Мои ожидания она поравдала на все 100%, в отличаи от Львова, UAFPUG#6. Красная площадь оказалась не такая большая, по сравнению с площадью свободы в Харькове 😛
Зато FlexCamp удался!
Я наконец-то познакомился в живую с Костей Ковалёвым! Рад до безобразия.
В плане организации было все на высоте (проблемы с интернетом отнесем к проблема отчественного бизнеса, где никто ни о чем не думает, они были не по вине организаторов). Спасибо организаторам.
По докладам, все доклады были из разряда “обзорных”. Мне большинство были не сильно интересны — я или уже это знал, или активно использую.
Для незнающих или только начинающих доклады, по-моему мнению, были очень полезны.
Фотографий я не делал, но есть хорошие фото от mr.Destro .
На FlexCamp мой доклад был посвещен Eclipse Monkey (Monkey Script), который совпал с открытием русскоязычного проекта “monkey-for-flex” по использованию Eclipse Monkey.
Мой доклад тоже был больше общеобразовательный. Ниже его можно полистать
В разделе “Живой пример” я показал пример генерации коментариев для класса из шаблона, работу с диалоговыми окнами (вызов стандартного колор пикера) и генерацию хендлера для события. Эти скрипты будут выложены в проекте “monkey-for-flex”
Posted in AIR, Monkey Script, RAFPUG, RIA, Silverlight, Люди | 8 Comments »
Sunday, November 2nd, 2008
Недавно стартовал проект “monkey-for-flex” посвещенный использованию Eclipse Monkey (Monkey Script) для рассширения функционала Flex-Builder. Проект появился благодаря статье “Используем Eclipse Monkey чтобы сделать Flex удобнее” белорусского флексера Юрия Жлобы.
На данный момент проект содержит краткое вступление в работу с Monkey Script, ссылки на документацию и примеры его использования, небольшой перечень известных возможностей и несколько скриптов. Я должен был выложить еще и свои скрипты, но пока не дошли руки оформить их нормально :(. Обещаю исправиться.
Так как нормальная документация по Monkey Script практически отсутствует, то мы рады любым примерам, любым материалам.
Присоеденяйтесь! Сделаем Flex Builder удобнее!
Posted in Eclipse, Flex Builder 2, Flex Builder 3, Monkey Script | 1 Comment »