我在FlexUnit 4上遇到一个错误,我找不到解决方案。下面是错误:
无法解析为组件实现。
这是我的示例应用程序(我使用的是FlashBuilder 4高级版,所以我假设所有必要的SWC都已经安装好了):
<?xml version="1.0" encoding="utf-8"?>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import sampleSuite.SampleSuite;
import org.flexunit.listeners.UIListener;
import compilationSuite.SuitesToRun;
import org.flexunit.runner.FlexUnitCore;
private var core:FlexUnitCore;
public function runMe():void {
core = new FlexUnitCore();
core.addListener( uiListener );
core.run( sampleSuite.SampleSuite );
}
]]>
</fx:Script>
<adobe:TestRunnerBase
id="uiListener"
width="100%"
height="100%" />
我发现的一个想法来自FlexUnit支持站点,它说如果我的命名空间没有错(它也没有错),那么我就会缺少这个文件: FlexUnit4UIListener.swc
我使用的是Flex4和FlashBuilder 4.5.1SDK。在我的构建路径中,我引用了这三个文件及其SWC:
C:\Program Files\Adobe\Adobe Flash Builder 4 Plug-in\eclipse\plugins\com.adobe.flexbuilder.flexunit_4.0.1.277662\flexunitframework\libs\version4libs{Common,FlexProject和locale/version4locale}
我的项目的libs文件夹中还需要更多的SWC吗?我能错过什么呢?
发布于 2012-03-19 23:38:04
我相信这个问题一定是因为不正确地导入SWC文件。不管怎样,我已经升级到了FlashBuilder 4.6,找到了一篇向我展示如何使用FlexUnit4的文章,并且我已经让它正常工作了。
这是那篇文章的链接,以防其他人可能会发现它有用:http://www.adobe.com/devnet/flex/articles/flashbuilder4_tdd.html
发布于 2012-03-23 15:17:29
你确定命名空间是"adobe“吗?通常我会假设是"flexunit“之类的东西。您的文本组件的根标记中是否有以下名称空间声明?
xmlns:adobe="http://www.adobe.com/2009/flexUnitUIRunner"我建议将其更改为:
xmlns:flexunit="http://www.adobe.com/2009/flexUnitUIRunner"然后,您必须像这样使用它:
<flexunit:TestRunnerBase id="uiListener" width="100%" height="100%" />根据错误消息,我认为这是一个名称空间问题。如果这些类通常不可用,您的IDE应该会在import语句中向您显示许多错误。
克里斯
发布于 2013-02-16 06:13:48
Eclipse (在我的例子中是STS)抱怨说找不到以下文件夹:"C:\Program Files\Adobe\Adobe Flash Builder 4.7\eclipse\plugins\com.adobe.flexbuilder.flexunit_4.7.0.349722\flexunitSwcs\4.5\locale\en_US\version4locale\“
安装时有一个文件夹"C:\Program Files\Adobe\Adobe Flash Builder 4.7\eclipse\plugins\com.adobe.flexbuilder.flexunit_4.7.0.349722\flexunitSwcs\4.5\locale\en_US“”,其中有一个文件"FlexUnitTestRunner_rb.swc“。通过创建子文件夹version4locale,并将文件"FlexUnitTestRunner_rb.swc“复制到其中,并没有修复flex项目中的问题。但是,删除项目并将其从SVN存储库中重新导入修复了它。
因此,Flash Builder需要在创建或导入项目之前将其放在适当的位置。(我无法更新项目设置,因为它是由早期版本的Flash Builder创建的;并且是从SVN导入的。更新项目设置导致更多错误)。
https://stackoverflow.com/questions/9742632
复制相似问题