我们的应用程序有超过15种不同的顶级mxml文件,用于创建我们页面中使用的各个控件。
我们使用Ant进行自动构建,并分别为每个mxml文件调用mxmlc任务(参见question 78230类似示例)。但是,为每个mxml文件单独运行编译器已经累积了相当长的时间。我们的构建时间接近10分钟,5分钟用于编译我们的flex应用程序,5分钟用于编译java类的hundreads,构建jar,安装程序等。每个flex编译运行相当快(15-20秒),但它们加起来。
有没有办法通过一次调用mxmlc编译所有这些?
答案 0 :(得分:1)
加速它的一种方法是使用compc
将除顶级类之外的所有内容编译成一个大SWC,然后编译顶级类并将SWC用作库。这样,多个应用程序使用的类只会被编译一次。
但是,编译Flex应用程序所花费的时间的大部分贡献者是JVM启动时间,每次编译都会启动它自己的JVM(加上一个用于Ant进程)。避免这种情况的一种方法是使用Flex编译器Shell(fcsh
)而不是Ant,但这当然有它的缺点。另一种方法是尝试HellFire,它在一个单独的永远在线进程中运行编译器,这意味着不再需要等待JVM启动。
答案 1 :(得分:0)