通过三天悲剧研究,终于把sparkWeb源码搞到编译成功了!为以后查阅方便,以为新手做个产考,我将详细步骤和注意事项说下!
一开始去网上找的方法都一样,都行不通,只能获源码,但是编译不过!不是报这个错就是报哪个错的!
先看看官网提供的方法
上面的方法很简单,就是去 http://svn.igniterealtime.org/svn/repos/sparkweb/trunk/ 这个svn服务器将如下图这个目录全部check出来
让后用FILE BUILD将xiff,SparkWebCore,SparkWebCommonComponents,SparkWeb全部导入就能编译成功了!
但是,MD,这是扯淡的!
注意:这里xiff不能用这个目录下,如果用这,编译时你会发现,导包都是错的!要用如下图这个目录下的才行
summer_of)code_2008就是xiff,当目录名称改下就行.
但是xiff根本无法导入FB,因为,xiff里面l连 .project文件都没有,如何导入!
好吧,那只有自己把.project文件拷贝进去了在修改了!OK,我也是这样做的,顺便拷贝了一个.project文件到xiff里面去,让后再次导入,但是还是无法导入!
搞了半天,原来还差两个文件,如图
把这两个文件加进去,xiff终于导入成功了!其实这里还有个蛋疼的问题,xiff目录名士小写的,必须改成大写,要不然后面生xiff.swc是不行,必须生成XIFF.SWC才行,所有必须改成大写!这个官网上没找到,还好网上大家都提到了!
接下就是编译了,选择project-->clean,稍等下,会发现一堆错误!大概六七十个,太吓人了!这里就是关键了!
有可能的错误有:
1.SparkWebCore,SparkWebCommonComponents,SparkWeb导入XIFF里的类是错误的!
看他的导入语句
org.jivesoftware.xiff.XXif
在看下xiff的包结构,是不是一样,如果不一样,将所有org.jivesoftware.xiff.XXXXX的语句全部换成好xiff结构一样的语句!
2.找不到类型或者不是编译常量
找到座位所在的行,找所指示的错误变量或者类名称,删除,然后打:按照提示重新选择该变量。
3.类型转换错误,
SDK版本问题,选择相应的project右键,选择Properties,然后选择Flex Compiler完成如下的设置
4.资源文件没有找到
拷贝check出来的assets目录下images文件覆盖到SparkWeb和SparkWebCommonComponents目录下的assets里!
5.CommonComponebts项目下package com.jivesoftware.spark的IconComboBox类的吗,改成这样(如果保存)
public function getTextInput():TextInput
{
//return textInput;//如果这里保存,改成返回null
return null;
}
最如果编译如果SparkWeb生成bin-debug有相应htm和swf等文件,就说明编译成功了!
不得不说这个开源项目太蛋疼了,搞到源码,还要大费周折才能编译成功!