Как мне скомпилировать несколько независимых mxml-файлов одновременно? - PullRequest
0 голосов
/ 11 июня 2009

В нашем приложении более 15 различных mxml-файлов верхнего уровня для создания отдельных элементов управления, которые используются на наших страницах.

Мы используем Ant для наших автоматических сборок и вызываем задачу mxmlc для каждого файла mxml отдельно (см. question 78230 аналогичный пример). Запуск компилятора отдельно для каждого файла mxml, однако, уже занимает значительное время. Наше время сборки приближается к 10 минутам, 5 минутам для компиляции наших Flex-приложений и 5 минутам для компиляции сотен классов Java, сборок JAR, установщика и т. Д. Каждый прогон Flex-компиляции достаточно быстрый (15-20 секунд), но они складываются ,

Есть ли способ скомпилировать их все одним вызовом mxmlc?

Ответы [ 2 ]

1 голос
/ 12 июня 2009

Один из способов немного ускорить его - это скомпилировать все, кроме классов верхнего уровня, в один большой SWC, используя compc, затем скомпилировать классы верхнего уровня и использовать SWC в качестве библиотеки. Таким образом, классы, которые используются более чем одним приложением, будут скомпилированы только один раз.

Однако большой вклад во время компиляции приложения Flex составляет время запуска JVM, и каждая компиляция запускает свою собственную JVM (плюс одну для процесса Ant). Один из способов избежать этого - использовать оболочку компилятора Flex (fcsh) вместо Ant, но это, конечно, имеет свои недостатки. Другой способ - попробовать HellFire , который запускает компилятор в отдельном постоянно включенном процессе, что означает, что больше не нужно ждать запуска JVM.

0 голосов
/ 12 июня 2009
  1. Почему бы не использовать Flex Builder для автоматической компиляции всего?
  2. Являются ли mxml-файлы компонентами и / или модулями? Я думаю, что mxmlc компилирует их автоматически, если они связаны основным приложением, но я не уверен ...
...