设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13979|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ a! P- L; Y, Q& v& g" W0 k- f8 H
: J+ x# Y7 F" p; P& {3 I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- x' ~9 }6 g, \3 {# S) S! s) G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 V" [1 e8 s& \
swarm.SignatureNotFoundException+ |3 p4 ~* v! ^0 m8 h
        at swarm.Selector.<init>(Selector.java:76)2 u" y: i4 T  A( F$ y( \" V
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  D0 a2 t# X+ h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  T" ]2 S- {% H, T" s. @. Q! e* t+ g# o. b$ M

. T0 J! z8 n8 w  Vimport swarm.objectbase.SwarmImpl;/ V# v6 H9 x9 R, S; x  j0 b8 v
import swarm.objectbase.Swarm;* P0 x2 f/ W% b, J
import swarm.activity.ScheduleImpl;
0 r9 Z$ d7 F( Eimport swarm.activity.Activity;
; x7 g; G. T  N9 y! dimport swarm.activity.ActionGroupImpl;
4 |% g( D& K) y9 N. n1 Himport swarm.collections.ListImpl;
) Y3 p. C) T; x, Gimport swarm.defobj.Zone;
  H! y0 h6 u0 ^% Iimport swarm.Globals;" Z& J' ?6 m( ^: H) K7 B+ U' w
import swarm.Selector;* j2 l/ e1 c  N' V- F
import swarm.activity.ActionGroup; : r+ z' ?! y* O; j% [7 q& n
class Agent {
3 m; w- w( Z6 b0 i1 A0 h        char id;
! _6 {  g3 @) b+ o' Y. o4 M) `( C5 e; U3 ~- L
        Agent(char id) {
" i% ?1 a* Z4 D% F3 F4 _7 `5 q                this.id = id;
) C* d6 I/ g6 O9 z        }- [' [: f0 [& r. a+ x+ V
5 s+ w. z$ ^8 W; x+ h
        public void agentStep() {' j! a2 J3 {+ D' w2 O' G
                System.out.println(id + ":" + Globals.env.getCurrentTime());$ @* c- _5 S2 |1 t
        }) R3 J) F9 n. b
}; C! d; {; w9 v$ D" y' v
5 z2 x4 v" `8 E! e
public class ActionGroupDemo extends SwarmImpl {# A8 b1 q# Q" _& _. i
        ScheduleImpl schedule;
* X7 j4 r% k  E. \' t& X. M3 V        ActionGroupImpl actionGroup;/ Z) u9 g% W- X. H
        ListImpl list;4 A- L7 q8 }4 P( |' l
        char Id = 'a';- q7 p' }% o! G. O- E

7 y" n; v6 \3 G3 V$ S        ActionGroupDemo(Zone aZone) {
+ ?+ {' a: f, \& l) C- Q                super(aZone);6 Y9 S5 y( ^9 ?* ?) K
                list = new ListImpl(aZone);
' N# p: C. T, v5 m+ I2 \8 d+ O                swarmSetp();
1 Z" r% [  n  G( W2 f$ F                actionGroup = new ActionGroupImpl(aZone);: L1 S" e( u$ Z. M. y2 f3 V7 w3 B2 n
                schedule = new ScheduleImpl(aZone);
* V/ T1 _  m+ o4 u' v* ~+ S                try {
( F0 i$ u+ e. Y' C$ u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 d% X+ a6 \1 y% X% w; M& e+ U) H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; H' i3 s& C- L, F6 P                        
; j. ^, t# x  H5 H7 e+ U                        actionGroup.createActionForEach$message(list, agentSel);
. p4 t/ I9 w( m8 p% g                        actionGroup.createActionTo$message(this, swarmSel);
" C  X! F/ q7 |5 ]1 q7 g                        schedule.at$createAction(0, actionGroup);
- q' s' a/ L0 `2 i+ I. w; |- E                        schedule.at$createAction(1, actionGroup);# A! e! Q9 F; D% n( V
                        schedule.at$createAction(2, actionGroup);: a! W8 J  K" [% N

4 ]/ ~% d5 w. O% J, O" q1 {: F                } catch (Exception e) {: p6 ~5 H- Q) q, F
                        e.printStackTrace(System.err);( |$ O) Q0 ~! x' v# S
                        //System.out.println(e);
2 a' Q' d6 _/ j& `                        System.exit(1);7 ?% a' _6 |& [( l  d
                }
" R7 y# q  u( L% |/ ~
" h) d% ?" _. n1 ]& E- x. J6 z3 \5 L
7 W. Q6 T- W: B& S        }
) \' G& s: u. T( o
8 W, j6 r6 T  j3 J        private void swarmSetp() {4 m. j4 m5 y, O8 O
                list.addLast(new Agent(Id));. }% T# D1 A) V+ D. ]+ c
                Id++;
" U" Q3 @" ]) ], o9 @2 M; }+ Y        }" U3 C& n/ K5 I0 q: A

1 Q, m$ O6 Y' q7 e5 N        public Activity activateIn(Swarm context) {
0 f- b  F7 c  E$ x& s* k# y" A                super.activateIn(context);
4 [4 g8 s7 \  d/ t4 n                schedule.activateIn(this);3 p$ f5 Z% Q3 t) U
                return getActivity();
, [. |1 J5 A# w        }
) R3 k7 O5 y, H, T3 c( u" L: D( H4 \9 q, N  d
        public static void main(String[] args) {
9 L/ ?3 V2 [' ~" v6 ^% m  d                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& U* n! b7 e6 y: \- Z- @5 q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 f0 N: @4 l0 |                swarms.buildObjects();5 e% L% s1 y- L
                swarms.buildActions();! w  U2 S4 G. a- l4 @
                swarms.activateIn(null).run();
2 i3 I4 E% {0 z0 ]        }
( o& Y3 h! {+ o& Q) R
4 Z8 r5 ~- b$ \4 P/ _" a1 ^}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-9-23 17:54 , Processed in 0.024832 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表