Совет для ускорения времени компиляции в Разработчике Flex 3?

matches возвращает true, если вся строка соответствует заданному шаблону. find пытается найти подстроку, которая соответствует шаблону.

12
задан travis 29 August 2008 в 01:39
поделиться

12 ответов

В дополнение к предложениям, уже упомянутым, закройте любые проекты, которые Вы имеете открытый, который Вы не используете.

Богатый щелчок по Проекту в представлении Navigator и выборе "Закрывает Несвязанные Проекты".

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

камеры микрофона

mesh@adobe.com

5
ответ дан 2 December 2019 в 04:10
поделиться

Обычно первая сборка берет самое длинное, и затем это довольно быстро после этого. Это использует Core 2 Duo Vista x64 w/.

Иначе я почти уверен, что процессор обновления Intel Core i7 Extreme Edition 965 3.2GHz ускорил бы Ваш Flex, создающий приятно.. :) :) :)

-1
ответ дан 2 December 2019 в 04:10
поделиться

Я не использую Разработчика Flex, но я использую Flex компилятор SDK каждый день, и я тратил впустую уйму времени, ожидающую компилятора MXMLC, чтобы сделать его задание, пока я не нашел Оболочку Компилятора Flex:

http://blog.zarate.tv/2008/12/07/theres-something-called-flex-compiler-shell/

Хотя в Разработчике Flex теории уже использует это оптимизация, могло бы стоить проверить.

0
ответ дан 2 December 2019 в 04:10
поделиться

Можно хотеть исследовать компилятор командной строки, найденный в Flex SDK, mxmlc. Как я вспоминаю, Разработчик Flex 3, кажется, скрывает все детали компилятора, но возможно существуют аргументы, которые можно добавить, который поможет Вам ускорить компиляцию.

Например, можно хотеть установить optimize=false который пропустит шаг оптимизации байт-кода (возможно, уменьшающий время компиляции)? Это, конечно, прибывает в цену производительности и размер файла реального приложения.

Больше документации относительно mxmlc может быть найден в: http://livedocs.adobe.com/flex/3/html/compilers_13.html.

Удачи!

0
ответ дан 2 December 2019 в 04:10
поделиться

Медленное время компиляции чаще всего вызывается при наличии больших количеств встроенных ресурсов ([Встройте] или @Embed).

Опция 2 на этой статье могла бы помочь Вам: [http://www.rogue-development.com/blog2/2007/11/slow-flex-builder-compile-and-refresh-solution-modules/]

4
ответ дан 2 December 2019 в 04:10
поделиться

Вы хотите по крайней мере 4 концерта на своем компьютере, если это возможно, и удостоверяетесь, что переопределили настройки памяти по умолчанию, которые eclipse/flexbuilder дает приложению.

Если Вы не уверены, как сделать это, можно найти flexbuilder приложение в Приложениях/, щелкнуть правой кнопкой и выбрать "Show Package Contents". Затем войдите в файл содержания и отредактируйте файл eclipse.ini. Редактирование тот файл имеет настройки памяти, по крайней мере:

-vmargs -Xms768m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=128m 

Также стоит войти в eclipse/flexbuilder предпочтения и установить флажок "Show heap status" в соответствии с Windows-> Предпочтения-> Общий (Это находится в затмении с плагином FB, я предполагаю, что это также там для автономного FB).

Это показывает текущую память в нижнем правом углу окна и имеет немного значка корзины, таким образом, можно вызвать сборку "мусора".

Я также предложил бы выключить автоматическое здание проекта, когда Ваши файлы изменяются (можно вызвать сборку с cmd-B).

У нас был огромный проект с довольно многими файлами модулей, и производительность в FlexBuilder 3 была достойна с этими шагами.

2
ответ дан 2 December 2019 в 04:10
поделиться

Перейдите к Проекту-> Свойства-> Приложения Flex. Все перечисленные приложения компилируются каждый раз (даже при том, что у Вас есть набор по умолчанию). При удалении всего кроме значения по умолчанию (не волнуйтесь, оно не удалит фактические файлы), оно только компилирует приложение по умолчанию. Это привело к значительной скорости для меня. При изменении приложения по умолчанию оно ДОБАВЛЯЕТ его к Списку приложений Flex - добавляющий ко времени компиляции. Необходимо будет вести этот список для получения самой быстрой компиляции.

1
ответ дан 2 December 2019 в 04:10
поделиться

Нет никакой потребности использовать mxmlc на командной строке только, чтобы смочь добавить флаги компилятора. Щелкните правой кнопкой по своему проекту в Навигаторе Flex, выберите Свойства и затем Компилятор Flex в диалоговом окне, которое появляется. Там можно добавить любые дополнительные флаги компилятора.

Не уверенный, что существует очень, чтобы сделать, хотя, больше кода означает больше времени компиляции, это - просто способ, которым это. Если Вы не делаете сборки конечных версий (или независимо от того, что это называют в Разработчике Flex), маловероятно, что Ваши параметры компилятора включают optimize для начала. Лучший выбор попробовать был бы -incremental (который только перекомпилировал части, которые изменились), и -keep-generated-actionscript (который мешает компилятору удалить файлы ActionScript, которые он генерировал из файлов Вашего приложения MXML).

Я очень предпочитаю использовать mxmlc на командной строке (посредством Муравья) по сравнению с Разработчиком Flex. Хотя я не думаю, что последние компиляции немного медленнее, это чувствует себя более вялым каждым способом. Используя Муравья также позволяет сделать больше, чем просто компиляция при создании, и условная компиляция (только компилируют SWF или SWC, если исходный код на самом деле изменился). Проверьте мое сообщение в блоге для большего количества информации об этом.

То, что Вы могли попробовать, является Компилятором Flex Shell, другой инструмент командной строки, который может ускорить вещи. В основном это пытается сохранить как можно больше в памяти между сборками, таким образом, никакая потребность ожидать вещей как запуск JVM (компилятором Flex является JAVA-приложение). С другой стороны, это - вид того, что Разработчик Flex делает так или иначе.

8
ответ дан 2 December 2019 в 04:10
поделиться

Я создал RAM Disk с рабочим пространством, и он дает до 10% лучшего времени компиляции. Немного, но кое-что.

4
ответ дан 2 December 2019 в 04:10
поделиться

Я всегда отключаю "автоматическую компиляцию" для Flex. Он компилируется слишком много, занимает слишком много времени и поэтому прерывает мою работу.

Если у вас много разных файлов проекта, и все они должны быть перекомпилированы, но у вас также есть открытые другие проекты, и вы не хотите их всегда закрывать вы делаете сборку, вы также можете использовать рабочие наборы Eclipse.

К сожалению, Flex Navigator по умолчанию не поддерживает рабочие наборы. Но вы можете открыть проводник пакетов с помощью Window / Show View / ... . Нажмите на маленькую белую стрелку, направленную вниз, вправо и выберите Элементы верхнего уровня: рабочие наборы . Затем вы можете добавить рабочие наборы (или группы проектов). Каждый проект должен быть как минимум в одном рабочем наборе (по умолчанию «Другие проекты»), но может быть и в нескольких.

Теперь с Проект / Рабочий набор сборки / ... вы можете указать Eclipse собрать все проекты в этом рабочем наборе, но ни один из остальных. Это особенно полезно, если вы подозреваете, что ссылки на ваш проект иногда не работают - в противном случае сборка «самого верхнего» проекта должна автоматически запускать последующие сборки.

1
ответ дан 2 December 2019 в 04:10
поделиться

Прежде всего, комментарии к некоторым ответам:

  1. Нет необходимости явно указывать -incremental в Flex Builder, поскольку он по умолчанию использует инкрементную компиляцию.

  2. -keep-generated-actionscript снижает производительность, поскольку инструктирует компилятор записывать коды AS3, сгенерированные для компонентов MXML, в середине компиляции. Файловый ввод-вывод в середине компиляции означает ненужные паузы и низкую загрузку ЦП.

  3. -optimize замедляет компоновку, потому что указывает компоновщику создавать SWF меньшего размера. Обратите внимание, что -optimize = true | false не влияет на построение SWC, потому что SWC являются библиотеками и не должны быть оптимизированы.

  4. Я редко вмешиваюсь в настройки JVM, потому что JVM хорошо знает свои задачи и неплохо настраивается во время выполнения. Большинство людей усугубляют ситуацию, устанавливая различные параметры настройки ГХ. Тем не менее, есть 3 параметра, которые большинство людей понимают и правильно задают для своего использования:

-Xmx (максимальный размер кучи)

-сервер или -клиент (сервер HotSpot или клиентская виртуальная машина)

-XX: + UseSerialGC или -XX: + UseParallelGC (или другой непоследовательный GC)

-сервер постоянно превосходит -client примерно на 30% при запуске компилятора Flex. - XX: + UseParallelGC включает параллельный сборщик мусора. идеально подходит для многоядерных компьютеров и когда у компьютера еще есть свободные циклы ЦП.

Вы также можете попробовать HellFire Compiler Daemon ( http://bytecode-workshop.com/ ). Он использует несколько ядер процессора для одновременной компиляции нескольких приложений Flex.Вы также можете запустить компилятор на второй машине через сокеты (при условии, что ваша вторая машина имеет более быстрые процессоры и больше памяти).

На мой взгляд, используйте больше модулей, чем библиотек, и используйте HFCD.

Надеюсь, это поможет.

-Clement

10
ответ дан 2 December 2019 в 04:10
поделиться

Как сказал Клемент, используйте демон компилятора HellFire. Если на вашем компьютере несколько модулей и больше ядер ЦП, он может компилировать их параллельно. Другой вариант - использовать IntelliJ (коммерческая версия), которая предлагает ту же функцию.

1
ответ дан 2 December 2019 в 04:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: