我们有一个可以在Flash Builder 4.7上成功编译的AS3项目。
最近我需要重构它。由于Intellij-idea with flash / flex插件似乎提供了更多的重构帮助,我想尝试一下。
所以我安装了Intellij-Idea 2016.3.2终极版。导入现有项目并设置AIR 4.6.0 sdk(可在Flash Builder 4.7安装目录中找到)后,我可以开始构建。
问题是看起来intellij-idea需要比flash builder更严格的语法检查。这是我遇到的一些编译错误:
将生成以下代码:函数不返回值。
public static function isChrome2():Boolean{
try {
return false;
} catch(error:Error) {
return false;
}
}
以下代码生成:重复变量定义(关于变量tempVertexData)
public static function setGamePlueVertexData2( vertexData:Vector.<Number> ):void {
if (SceneReader.NUM_PER_VERTEX == SceneReader.VERTEXSIZE) {
var tempVertexData:Vector.<Number> = Vector.<Number>(1);
}
else {
var tempVertexData:Vector.<Number> = Vector.<Number>(2);
}
for( var i:int = 0; i < tempVertexData.length; ++i )
{
vertexData[i] = tempVertexData[i];
}
}
以下代码将生成:覆盖未标记为覆盖的函数(关于函数initModel)
public class EffectRenderObject
{
public function initModel(entity:LocalClientEntity) :void
{
}
}
public class DragonWhirlwindLevelUpEffectRenderObject extends EffectRenderObject {
private function initModel():void
{
}
}
为什么不编译?如何在intellij-idea中再次编译?
答案 0 :(得分:1)
好吧,我发现Flash Builder 4.7安装中有3个SDK:
我最初复制了第二个。复制第一个后,项目可以再次编译。