我们99%是Java商店,我们使用Jenkins作为CI工具。最近,我们需要编译和构建一些.NET项目,并且我可以设置一个Jenkins从站来执行此操作。在Jenkins中编译Flash
有,作为构建过程的一部分编译Flash应用程序一个项目。它带有一个build.xml
并在Ant下运行。有两个目标,一个叫做buildandpost
,另一个叫做buildandpost_withFlash
。它运行此编译任务:
<target name="compile" description="compile flash and copy to dist" >
<exec dir="src/flash"
executable="C:/Program Files/Adobe/Adobe Flash CS3/flash.exe"
searchpath="true" >
<arg line="compileProject.jsfl"/>
</exec>
<echo message="Flash exited" />
<fail message="Flash Compile produced errors">
<condition>
<isfileselected file="src/flash/compile_log.txt">
<and>
<contains text="Error" casesensitive="no"/>
<contains text="Warning" casesensitive="no"/>
</and>
</isfileselected>
</condition>
</fail>
</target>
当与buildandpost_withFlash
目标运行詹金斯,我注意到,詹金斯将开始编译任务,然后坐在那里什么也不做,直到我杀了这份工作。日志中没有打印任何内容。运行buildandpost
任务,该任务执行buildandpost_withFlash
所做的所有操作,而不进行编译。
我打开构建服务器,跑了蚂蚁buildandpost_withFlash
目标让我吃惊,一个GUI打开了,而编译正在发生。我不必做任何事情。 GUI编译完成后,Ant继续,但我现在意识到Jenkins无法运行compile
任务,因为没有终端与其任务相关联。
有没有一种方法来运行这个编译不开放的GUI?我可以在不打开VisualStudio的情况下编译VisualStudio项目。我可以用Flash做这个吗?这是CS3。否则,我将无法与詹金斯合作。
正在执行的命令是'C:/ Program Files/Adobe/Adobe Flash CS3/flash.exe compileProject.jsfl'。编译的输出是几个'* .swf'文件,'* .js'和'* .html'。我会看看我们是否安装了'mxmlc'。 –
刚刚在整个Adobe文件夹中搜索了任何和所有'* .exe'文件。没有任何类型的'mxmlc'文件。我不是Flash开发人员,也没有使用Flash。我会看看詹金斯是否可以在控制台运行时控制它。这样,它将能够打开GUI。 –
[这里有mxmlc.exe](http://www.senocular.com/flash/tutorials/as3withmxmlc/),但我并不是建议使用它。最好的方法是直接使用jar。 – Slav