Flex 4项目的命令行构建

时间:2011-08-07 13:44:55

标签: ant maven flex4 build-automation

我们的产品中有一个Flex 4.0项目,我们正在尝试为它设置命令行构建。这将在我们的构建服务器上使用。

到目前为止,我们尝试了三种方法,但似乎没有一种方法令人满意:

1)使用mxmlc - 这样做的缺点是我们必须明确地给出所有依赖项,而不是使用已经存在于项目中的依赖项。

2)使用ant(特别是fb.exportreleasebuild) - 运行良好,但我无法弄清楚如何使用它设置工作区。现在,我可以预先设置一个工作区,但是由于Eclipse使用绝对路径,我认为这不起作用(参见http://forums.adobe.com/thread/826995)。

3)使用maven - 我还没有尝试过,但是通过阅读一些教程(例如http://ria.dzone.com/articles/flex-and-maven?page=0,1&mz=8019-adobe),看起来依赖项也必须手动指定。另外,我必须指定精确的Flex编译器版本,这似乎不太优雅 - 我不想在更改编译器版本时更新我的​​构建脚本。

有没有办法从命令行构建flex项目,而无需手动指定所有依赖项并且无需手动创建工作区?

1 个答案:

答案 0 :(得分:2)

在上周,我有“快乐”为我们的项目设置maven构建。

对于没有自定义字体,资源,单元测试,第三方框架等的简单项目,它是相对轻松的。对于剩下的东西,在你开始工作之前会有一个重大的试验和错误。

管理手动安装所需的依赖关系的一种方法是创建一个shell脚本,该脚本自动将工件从libs-directory安装到本地存储库中,您也可以将其放在项目工作区中。使用这种方法,您可以使用libs-directory进行Eclipse构建,使用本地maven repo进行maven构建。

关于Flex的版本 - 它只是POM中的一个属性值。这就是它在maven世界中的表现 - 你管理POM,而不是下载新的SDK,然后更新项目属性等。它真的无比简单。

但是当你需要嵌入字体时,你需要手动安装一些属于Flex SDK的工件,所以它并不那么简单。为了实现自动化,我还将整个Flex SDK作为项目工作区的一部分,以便我可以在脚本中使用相对路径而不是绝对路径来引用它。

到目前为止,Flex社区中使用最多的方法是使用Ant构建。

Maven仍然相对难以设置和采用。