Flash BlazeDS生成的文件导致Flex编译器失败
我以前从未使用过Flash/BlazeDS或Ant,如果这过于简单,那么很抱歉 我有一个项目,我需要为它开发一些Java代码。该项目正在使用Flash和BlazeDS。对于项目的初始构建,将运行一个Ant脚本,最终运行我认为是Flex编译器的东西(sdk属性指向FlashBuilder 4Flash BlazeDS生成的文件导致Flex编译器失败,flash,ant,exec,blazeds,Flash,Ant,Exec,Blazeds,我以前从未使用过Flash/BlazeDS或Ant,如果这过于简单,那么很抱歉 我有一个项目,我需要为它开发一些Java代码。该项目正在使用Flash和BlazeDS。对于项目的初始构建,将运行一个Ant脚本,最终运行我认为是Flex编译器的东西(sdk属性指向FlashBuilder 4sdk/4.1.0目录) //一堆。但是,错误35不存在 是否有人知道错误是什么以及如何修复它?我有一个半猜测,也许问题在于我使用的是FlashBuilder 4.5,生成的BlazeDS文件有所不同。我尝试
sdk/4.1.0
目录)
//一堆。但是,错误35不存在
是否有人知道错误是什么以及如何修复它?我有一个半猜测,也许问题在于我使用的是FlashBuilder 4.5,生成的BlazeDS文件有所不同。我尝试过将SDK位置更新为指向4.5.0和4.5.1文件夹,但没有成功
为什么不使用FlexTask(adobe提供了一个Ant任务来包装mxmlc、compc和asdoc工具)?当贡献的库不受欢迎时,我可以理解这一点,但这是AS3构建的一种标准
错误代码是从mxmlc返回的,正如您正确指出的,mxmlc是Adobe Flex编译器。然而,编译器返回的代码是没有意义的。您需要实际的编译器输出(它打印错误种类和位置)。除非您可以正常运行编译器(以不忽略其生成的输出的方式),否则如果您坚持使用exec任务,则可能会花费数天的时间来尝试查找错误:),然后将程序的属性或文件更改为。也许将其重定向到属性,然后回显属性的内容
为什么需要使用Blaze生成AS3代码?它的代码生成器非常差。实际上,自己写一本可能是更好的办法
Blaze不会生成带有下划线的类,除非原始Java类带有下划线(这很不寻常)。带有下划线的类在Flex编译器生成的代码中更为常见,这些代码用于嵌入式资产、内联MXML组件、Flash Builder生成的其他一些代码等
1&3)我不做很多事情的原因是因为公司标准(不能更改构建脚本等)。它确实很糟糕。2)我尝试重定向输出,得到的只是“加载配置文件C:\BLACKOUT\sdks\4.1.0\frameworks\flex config.xml”和一些关于“方法标记的覆盖必须覆盖另一个方法”的警告(这些在构建工作时也存在)。4)这是我从另一个与我一起工作的开发人员那里得到的。我们的代码结构似乎是BlazeDS生成类似于_Super_MyBean.as和_MYBeanEntityMetadata.as的东西,然后我们在MyBean.as中扩展_Super_MyBean.as(并添加我们需要的任何帮助器方法,等等)。我相信这与我们在其他项目中对Cayenne所做的类似。覆盖错误似乎来自生成的_MyBeanEntityMetadata.as类(扩展了com.adobe.fiber.valueobjects.AbstractEntityMetadata
)。显然,文件被更新以覆盖getPropertyType
方法。但我想出于某种原因,编译器并不认为该方法存在。所以说到底,这可能是一个版本控制问题。可以因此,也许_mybeanityMetadata.as类永远不应该被提交到我们的SVN存储库中(当我得到代码时,它们已经在那里了)。我会试着把它们撕下来看看会发生什么。对BlazeDS的假设感到抱歉。正如我所说,我对Flash之类的东西一无所知。那么纤维材料的用途是什么呢?
<exec executable='"@{sdk}/bin/mxmlc.exe"' failonerror="true">
//A bunch of <arg> tags
</exec>