1

我想我在我的项目中遗漏了一些东西。我需要代理来执行我分配的特定任务。我正在使用玉。在里面action()我写了一个for循环来显示数字1到10。运行时没有显示错误,并且循环也没有被执行。当我运行时:

java -cp jade.jar jade.Boot -gui agent:TestAgent

我得到一个classNotFound异常并且还显示无法创建代理。

当我运行时:

java -cp jade.jar jade.Boot -gui -agent agent:TestAgent

我准备好代理信息,但没有调用操作方法。

可能是什么原因?我应该怎么办?

4

1 回答 1

1

尝试在你的IDE中运行jade。如果您使用 netbeans,您可以转到项目属性 -> 运行:主类:jade.Boot 参数:-gui agentName:packageName.AgentClassName(如果您使用的是默认包,请使用:agentName:AgentClassName)

您是否在函数中将您的行为添加到您的 TestAgent 中setup()?您可以使用addBehaviour(new myBehaviourClassName())

还有一件事你不应该在代理或行为中使用循环函数(至少不是大循环),而是使用循环行为(或done()函数中带有循环停止条件的 SimpleBehaviours)并使用拥有行为的代理来保存信息您只需要在action()函数中处理“循环”的一次或几次迭代。

如果你想从命令行运行jade,java jade.Boot -gui agentName:TestAgent 它会在主容器中启动你的代理。如果您遇到类未找到错误,请检查 cmd 中的当前路径,它应该是projectPath\build\classes(至少在 Netbeans 项目中,如果您使用另一个 IDE,路径可能不同)。

于 2013-03-22T14:20:05.630 回答