前段时间研究flex工程自动编译的时候,遇到了阻碍,就放下了,直到今天每日构建的问题又一次给项目组带来了麻烦,于是我彻底愤怒了。

最后,我的怒火没有白费,写出来以发泄情绪。

【基本原理】:

adobe提供了每日构建的方法:利用ant任务以命令行的形式完全模仿flashbuilder/flashbuilder-plugin的【导出发行版】编译方式来编译。

此种方式编译出的swf的性能是最好的。

官方说明:http://help.adobe.com/zh_CN/Flex/4.0/UsingFlashBuilder/WSbde04e3d3e6474c4-59108b2e1215eb9d5e4-8000.html

【实施前准备】:

安装:jdk1.6 32位 (一定要用32位的,如果是64位的操作系统也要安装32的,64和32的jdk可以共存)

安装:flashbuilder/flashbuilder-plugin

【实施】:

1.用flashbuilder/flashbuilder-plugin将flex项目导入,配置好,并可以手动编译成功;

对于使用flashbuilder-plugin的一定要注意这一步,不要使用本地的eclipse来导入项目,要使用plugin来导入配置项目,否则无法进行命令行

编译。

因为用flashbuilder-plugin创建的工作空间下的E:\Jenkins\workspace\.metadata文件夹下,有一些命令行工具要用的东西,例如:flex工程名。

2.写ant的build.xml,build.xml的位置随意放

<?xml version="1.0"?>
<project default="main">
<target name="main">
<fb.exportReleaseBuild project="ims-flex-1.0" />
</target>
</project>

其中target标签中的name="main"就是ant的执行任务名称,project=“ims-flex-1.0”就是指定要编译的flex工程名称

3.编写调用的命令行

set WORKSPACE=E:\Jenkins\workspace

REM works with either FlashBuilderC.exe or eclipsec.exe
"D:\Adobe\Adobe Flash Builder 4 Plug-in\eclipse-host-distro\eclipsec.exe" --launcher.suppressErrors -noSplash -application org.eclipse.ant.core.antRunner -data "%WORKSPACE%" -file "%WORKSPACE%\build.xml" main
pause

上面命令是调用plugin中的eclipsec.exe来编译的。如果使用的是flahbuilder则使用flashbuilderc.exe

  • WORKSPACE就是eclipse的工作空间
  • -file用来指定build.xml的位置
  • 最后一个参数main就是指定在build.xml中要执行的任务名称

4.运行批处理,开始自动编译,编译后,进入flex工程目录,其中会有bin-release目录,这里就是编译后的文件。

【吐槽】

adobe的文档写的如此之烂,文字说明根本没用,只能通过揣测批处理的意义,经过多次尝试失败后才最终解决。

使用Flashbuilder/Flashbuilder-plugins搭建Flex工程每日构建(自动化构建)的方法的更多相关文章

  1. 边缘化搭建 DotNet Core 2.1 自动化构建和部署环境(下)

    写在前面 本篇文章是上一篇边缘化搭建 DotNet Core 2.1 自动化发布和部署(上)的后续操作,本文主要讲解如何开启Docker Remote API,开启Remote API后的权限安全问题 ...

  2. 边缘化搭建 DotNet Core 2.1 自动化构建和部署环境(上)

    写在前面 写这篇文章的缘由是由于笔者的对新兴技术方向有所追求,但个人资产有限,只能容许购买一台阿里云低配1核2G服务器.服务器上搭建了 Centos7 & Docker & Jenki ...

  3. kotlin+springboot+mybatis-puls+mysql搭建gradle-web工程

    kotlin+springboot+mybatis-puls+mysql搭建web工程 ​ 前段时间研究了spring security及OAuth2系列之后,本来打算研究spring的,但是部门发生 ...

  4. 搭建Android工程的步骤及其第一个安卓程序

    1.安卓系统架构 1>底层是Linux系统 2>函数库层 由C或C++写的 3>Application frameWork应用的框架层 4>顶层是应用层 2.JVM与DVM介绍 ...

  5. 搭建Maven工程的时候,做单元测试,报ClassNotFoundException

    搭建Maven工程的时候报错 问题原因是在spring.xml中配置的  classpath:config.properties  没有在工程中创建.

  6. 阶段5 3.微服务项目【学成在线】_day17 用户认证 Zuul_14-网关-介绍网关及搭建网关工程

    4 Zuul网关 4.1 需求分析 网关的作用相当于一个过虑器.拦截器,它可以拦截多个系统的请求. 本章节要使用网关校验用户的身份是否合法. 4.2 Zuul介绍 什么是Zuul? Spring Cl ...

  7. vue实战_从头开始搭建vue工程

    写在前面:vue工程入口文件分析 /index.html,/src/main.js,/src/APP.vue /index.html文件示例: <!DOCTYPE html> <ht ...

  8. 我是如何进行Spring MVC文档翻译项目的环境搭建、项目管理及自动化构建工作的

    感兴趣的同学可以关注这个翻译项目 . 我的博客原文 和 我的Github 前段时间翻译的Spring MVC官方文档完成了第一稿,相关的文章和仓库可以点击以下链接.这篇文章,主要是总结一下这个翻译项目 ...

  9. 使用Docker搭建Jenkins+Docker持续集成环境(自动化构建发布部署)

    本文介绍如何通过Jenkins的docker镜像从零开始构建一个基于docker镜像的持续集成环境,包含自动化构建.发布到仓库\并部署上线. 0. 前置条件 服务器安装docker,并启动docker ...

随机推荐

  1. 我爱工程化 之 gulp 使用(二)

    上一篇  介绍了gulp的安装.环境等配置.基本使用,那么现在,我们快走进 速8,深入了解吧...... 一.各种安装.环境配置.插件安装(参考上一篇文章) 二.项目基本目录结构 三.编写 gulpf ...

  2. C#使用oledb方式将excel数据导入到datagridview后数据被截断为 255 个字符

    问题描述:在使用oledb方式将excel数据导入到datagridview中,在datagridview单元格中的数据没有显示全,似乎只截取了数据源中的一段 解决方案:1.关于该问题,微软官方答案: ...

  3. Sublime Text 中使用Git插件连接GitHub

    sublime Text的另一个强大之处在于它提供了非常丰富的插件,可以帮助程序员来适合大多数语言的开发.这些插件通过它自己的Package Controll(包管理)组件来安装,非常方便.一般常用的 ...

  4. jquery点击其他地方隐藏div层的实现程序

    js代码 $(document).ready(function() { //语言头部的点击事件,显示语言列表 $(".language_selected").click(funct ...

  5. Bios里,把SATA Mode Selection改为AHCI无法启动

    新装系统Win7_X64,将SATA Mode Selection改为AHCI后总是重启,baidu参考: SATA的硬盘就选AHCI(全称应该是SATA AHCI),AHCI可以提升硬盘的读写速度原 ...

  6. python获取系统时间

    import time print time.time() 输出的结果是: 1279578704.6725271 但是这样是一连串的数字不是我们想要的结果,我们可以利用time模块的格式化时间的方法来 ...

  7. mysql将多张表COUNT的数据相加

    由于数据量过大,我们将根据用户id 将数据存储在不同的表中,根据用户id模10的余数作为表的后缀.有如下十张表:test_0, test_1, ... ,test_9现在需要根据某个条件查询统计数据我 ...

  8. linux 查看各服务状态chkconfig

    使用chkconfig 查看服务状态启动状态chkconfig --list 查看服务状态chkconfig --del <service name> 删除掉某项服务.在Fedora14中 ...

  9. [转载]C#中获取时间戳(UnixTime)的方法

    .Net中没有封装获取时间戳(UnixTime,相对于1970年1月1日凌晨的毫秒数)的方法.因此本人写了如下方法实现. 提醒在摸索中的朋友,注意方法中的四舍五入.关于讨论四舍五入的方法,可以在这里找 ...

  10. Windows Phone 8 开发环境搭建

    原地址:http://blog.csdn.net/md521/article/details/11015139 Windows Phone 8将采用与Windows 8相同的NT内核,这就意味着WP8 ...