0

我正在使用 Royale 0.9.6 和 Crux 创建一个 hello world 类型的应用程序。这是我第一次尝试 Crux,我一直在使用 Royale sdk 中提供的示例继续前进。不幸的是,在设置完所有内容后,编译失败并出现以下错误:

java.lang.RuntimeException: Unable to find JavaScript filePath for class: mx.rpc.AsyncToken org.apache.royale.compiler.internal.graph.GoogDepsWriter.addDeps(GoogDepsWriter.java:643)org.apache.royale.compiler.internal.graph.GoogDepsWriter.addDeps(GoogDepsWriter.java:672)org.apache.royale.compiler.internal.graph.GoogDepsWriter.addDeps(GoogDepsWriter.java:672)org.apache.royale.compiler.internal.graph.GoogDepsWriter.addDeps(GoogDepsWriter.java:672)org.apache.royale.compiler.internal.graph.GoogDepsWriter.addDeps(GoogDepsWriter.java:672)org.apache.royale.compiler.internal.graph.GoogDepsWriter.buildDB(GoogDepsWriter.java:325)org.apache.royale.compiler.internal.graph.GoogDepsWriter.getListOfFiles(GoogDepsWriter.java:113)org.apache.royale.compiler.internal.codegen.mxml.royale.MXMLRoyalePublisher.publish(MXMLRoyalePublisher.java:446)org.apache.royale.compiler.clients.MXMLJSCRoyale.compile(MXMLJSCRoyale.java:441)org.apache.royale.compiler.clients.MXMLJSCRoyale._mainNoExit(MXMLJSCRoyale.java:265)org.apache.royale.compiler.clients.MXMLJSCRoyale.mainNoExit(MXMLJSCRoyale.java:222)org.apache.royale.compiler.clients.MXMLJSC._mainNoExit(MXMLJSC.java:369)org.apache.royale.compiler.clients.MXMLJSC.mainNoExit(MXMLJSC.java:304)org.apache.royale.compiler.clients.MXMLJSC.staticMainNoExit(MXMLJSC.java:262)org.apache.royale.compiler.clients.MXMLJSC.main(MXMLJSC.java:244)

然后有多个错误行说找不到 Crux 依赖的多个“mx.rpc”类。

我想知道我是否缺少导入或其他东西,但我无法弄清楚。

谢谢,


编辑:这里有一些简单的重现步骤:

  • 打开月光
  • 文件 > 新建 > Royale 浏览器项目
  • 输入任何项目名称并创建项目
  • 编译(CTRL+J):编译成功
  • 打开主 mxml 文件 src/[appname].mxml
  • 添加xmlns:crux="library://ns.apache.org/royale/crux"<js:Application>开始标签。
  • 添加以下内容:<j:beads> <crux:Crux> </crux:Crux> </j:beads>
  • 编译 (CTRL + J):编译失败,如上所述。

最小的关键实现

4

2 回答 2

1

我只是在 Royale 存储库中的示例中查看了 Moonshine IDE 项目文件。它们坏了——我已经修复了它们,所以你可以等待Nightly 构建并下载新的 SDK 以及示例,或者只使用结帐源代码。

当您打开任何这些示例时,右键单击 Moonshine 选择设置,您应该检查构建选项 - 会有许多额外的编译器参数,但在您的情况下,如果您输入“附加编译器选项”可能就足够了+configname=flex

于 2019-11-27T16:08:50.663 回答
0

查看屏幕截图,您似乎正在使用<j:beads>但尚未声明<j:>命名空间。尝试<js:beads>改用。

于 2019-11-25T11:24:28.500 回答