我觉得我缺少在我的项目的东西。 我需要代理执行我分配特定的任务。 我使用JADE。 内部的action()
我写一个for循环来显示数字1〜10。当运行没有错误显示,并且还是没有得到执行循环。 当我运行:
java -cp jade.jar jade.Boot -gui agent:TestAgent
我得到一个classNotFound
异常,也说明代理无法创建。
当我运行:
java -cp jade.jar jade.Boot -gui -agent agent:TestAgent
我得到的代理做好准备的信息,但操作方法是没有得到调用。
可能是什么原因? 我该怎么办?
试着在你的IDE中运行玉。 如果您使用NetBeans,你可以去项目属性 - >运行:主类:jade.Boot参数:-gui AGENTNAME:packageName.AgentClassName(如果你使用的是默认套餐使用:AGENTNAME:AgentClassName)
你将你的行为你TestAgent在setup()
函数? 你可以用做addBehaviour(new myBehaviourClassName())
还有一件事你不应该在药物或行为(至少不是大循环)使用循环功能,使用循环行为(或SimpleBehaviours用在循环停止条件done()
函数)来代替,而拥有该行为给代理节省您的需要只能处理一个,或在您的“循环”的几次迭代中的信息action()
函数。
如果你想运行在命令行中使用玉java jade.Boot -gui agentName:TestAgent
将推出你的代理主容器。 如果你得到一个类未找到错误检查在cmd当前的路径,它应该是projectPath\build\classes
(至少在NetBeans项目,如果你使用的是其他IDE的路径可能会有所不同)。