2017-10-25 14 views
1

나는 다음과 같이 추가 할 때 생각 나는 시스템을 정지하고 싶은 JaCaMo 프로젝트가 :JaCaMo에서 MAS를 올바르게 중지하는 방법은 무엇입니까?

+winner <- .stopMAS. 

나는 순수한 제이슨의 프로젝트에서이 같은 일을 오전,하지만 내가 가진이 JaCaMo 프로젝트 조직이 stopMAS 오류가 울부 짖는 소리로 카르타고 API에 ocurring되는 명령 후 :

java.lang.InterruptedException 
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireInterruptibly(AbstractQueuedSynchronizer.java:1220) 
    at java.util.concurrent.locks.ReentrantLock.lockInterruptibly(ReentrantLock.java:335) 
    at java.util.concurrent.ArrayBlockingQueue.put(ArrayBlockingQueue.java:350) 
    at cartago.WorkspaceKernel.execOp(WorkspaceKernel.java:782) 
    at cartago.WorkspaceKernel.execOp(WorkspaceKernel.java:600) 
    at cartago.AgentBody.doAction(AgentBody.java:72) 
    at cartago.CartagoSession.doAction(CartagoSession.java:86) 
    at jacamo.infra.JaCaMoAgArch.stop(JaCaMoAgArch.java:198) 
    at jason.architecture.AgArch.stop(AgArch.java:57) 
    at jason.infra.centralised.CentralisedAgArch.stopAg(CentralisedAgArch.java:113) 
    at jason.infra.centralised.RunCentralisedMAS.stopAgs(RunCentralisedMAS.java:728) 
    at jason.infra.centralised.RunCentralisedMAS.finish(RunCentralisedMAS.java:826) 
    at jason.infra.centralised.CentralisedRuntimeServices.stopMAS(CentralisedRuntimeServices.java:110) 
    at jason.stdlib.stopMAS.execute(stopMAS.java:44) 
    at jason.asSemantics.TransitionSystem.applyExecInt(TransitionSystem.java:736) 
    at jason.asSemantics.TransitionSystem.applySemanticRuleAct(TransitionSystem.java:237) 
    at jason.asSemantics.TransitionSystem.act(TransitionSystem.java:1525) 
    at jason.infra.centralised.CentralisedAgArch.act(CentralisedAgArch.java:203) 
    at jason.infra.centralised.CentralisedAgArch.reasoningCycle(CentralisedAgArch.java:212) 
    at jason.infra.centralised.CentralisedAgArch.run(CentralisedAgArch.java:231) 
    at java.lang.Thread.run(Thread.java:748) 
cartago.CartagoException: exec op exception. 
    at cartago.WorkspaceKernel.execOp(WorkspaceKernel.java:786) 
    at cartago.WorkspaceKernel.execOp(WorkspaceKernel.java:600) 
    at cartago.AgentBody.doAction(AgentBody.java:72) 
    at cartago.CartagoSession.doAction(CartagoSession.java:86) 
    at jacamo.infra.JaCaMoAgArch.stop(JaCaMoAgArch.java:198) 
    at jason.architecture.AgArch.stop(AgArch.java:57) 
    at jason.infra.centralised.CentralisedAgArch.stopAg(CentralisedAgArch.java:113) 
    at jason.infra.centralised.RunCentralisedMAS.stopAgs(RunCentralisedMAS.java:728) 
    at jason.infra.centralised.RunCentralisedMAS.finish(RunCentralisedMAS.java:826) 
    at jason.infra.centralised.CentralisedRuntimeServices.stopMAS(CentralisedRuntimeServices.java:110) 
    at jason.stdlib.stopMAS.execute(stopMAS.java:44) 
    at jason.asSemantics.TransitionSystem.applyExecInt(TransitionSystem.java:736) 
    at jason.asSemantics.TransitionSystem.applySemanticRuleAct(TransitionSystem.java:237) 
    at jason.asSemantics.TransitionSystem.act(TransitionSystem.java:1525) 
    at jason.infra.centralised.CentralisedAgArch.act(CentralisedAgArch.java:203) 
    at jason.infra.centralised.CentralisedAgArch.reasoningCycle(CentralisedAgArch.java:212) 
    at jason.infra.centralised.CentralisedAgArch.run(CentralisedAgArch.java:231) 
    at java.lang.Thread.run(Thread.java:748) 
[GroupBoard] p1 has quit, role participant removed by the platform! 

방법이 오류를 방지하기 위해? 이 stopMAS 명령을 수행하기 전에해야 할 일이 있습니까?

답변

1

이 메시지는 무시해도됩니다. JaCaMo의 최신 버전 (0.7-SNAPSHOT)이이 문제를 해결합니다.