Migration 你知道这个错误什么时候会出现在OpenLaszlo中吗?

Migration 你知道这个错误什么时候会出现在OpenLaszlo中吗?,migration,openlaszlo,lzx,Migration,Openlaszlo,Lzx,我目前正在将一个应用程序从OpenLaszlo从3.3迁移到5.0。我在其中一个类中遇到了这个错误 line unknown: Error: A conflict exists with inherited definition $lzc$class_xxx.$datapath in namespace public, in line: var $classrootdepth;var $datapath;function $lzc$class__mjb ($0:LzNode? = null, $

我目前正在将一个应用程序从OpenLaszlo从3.3迁移到5.0。我在其中一个类中遇到了这个错误

line unknown: Error: A conflict exists with inherited definition $lzc$class_xxx.$datapath in namespace public, in line: var $classrootdepth;var $datapath;function $lzc$class__mjb ($0:LzNode? = null, $1:Object? = null, $2:Array? = null, $3:Boolean = false) {
在那个特定的类中,我有datapath标记,如果我删除了它,那么我就不会得到这个错误


有人能告诉我发生此错误的原因吗?

我使用以下代码再现了错误消息:

<canvas debug="true">

  <class name="c1" extends="node">
    <datapath />
  </class>

  <class name="c2" extends="c1">
    <datapath />
  </class>

</canvas>

查看JIRA,我发现它已经作为一个bug归档了:

似乎存在相对较多的bug或情况,编译器会抛出难以理解的错误消息或异常,尤其是在将3.x或4.0/4.1应用程序升级到具有SWF10+运行时支持的OpenLaszlo版本时。这是非常不幸的,因为它很容易给人留下编译器有缺陷的印象

在和的实例中使用datapath标记时,编译器不会报告任何错误消息,例如:

<canvas>

  <class name="c1" extends="node">
  </class>

  <class name="c2" extends="c1">
  </class>

  <c1>
    <datapath/>
    <c2>
      <datapath />
    </c2>
  </c1>

</canvas>


datapath属性定义在类中看起来如何?看起来您正在为属性声明不同的类型。您可以发布一小段代码进行测试吗?错误消息是一条Flex编译器错误消息,当您在类中重新声明属性时会触发该错误消息,该属性已在超类中声明。对不起,我之前没有看到你的帖子。但我的代码和这个一模一样。我向@ptwithy寻求帮助,他更了解编译器。如果我们幸运的话,他会回答……谢谢……与此同时,我会尝试合并这个,看看它是否在我的应用程序中工作。我听说这个问题相对比较复杂,因为datapath标记的处理方式与OpenLaszlo中的普通标记不同。这意味着,目前没有比将datapath标记添加到实例而不是类更好的解决方案。