设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11809|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' d5 j- H7 ]8 K; ?. E1 A+ }
2 q* I$ [2 [# Y/ e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ o  X% H  C% l  x0 }, ?  @% p  s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ \6 E0 s. B" i- T3 y
swarm.SignatureNotFoundException% U/ p& U4 Q. D0 G$ g
        at swarm.Selector.<init>(Selector.java:76)
, q$ v$ S8 Q" b! z; {        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 K1 j8 L- r* ?5 ^/ Y# w
        at ActionGroupDemo.main(ActionGroupDemo.java:67)  d+ c  x( R' L5 |
  d+ ?4 Q2 t) E
; q$ v. g% Z6 J- I0 X1 b% I
import swarm.objectbase.SwarmImpl;
2 w) C6 [1 `* e4 G2 E9 L: R8 I5 Limport swarm.objectbase.Swarm;3 p2 G/ c# Q3 J* l' h
import swarm.activity.ScheduleImpl;
4 }* j" Z# T- v( e' [1 w! r/ fimport swarm.activity.Activity;
1 e9 g1 u) I  K. kimport swarm.activity.ActionGroupImpl;4 c5 H% C) {7 Y4 f1 E
import swarm.collections.ListImpl;
  ?1 n! M2 v7 x5 o' {4 Qimport swarm.defobj.Zone; 6 @; x# k( q1 }; s+ \' i8 y
import swarm.Globals;
. k8 |5 a* O. O3 Iimport swarm.Selector;, L! r$ j  }  C1 |4 B
import swarm.activity.ActionGroup; ) x  p0 L2 J& J/ ?: k* W$ A: N
class Agent {
) z, s! A0 d6 a! F) e        char id;) A' b6 O8 i: [4 O0 }- x1 X

5 v2 k1 A, l6 \5 z2 s- I        Agent(char id) {1 L/ J5 g5 u. t1 M
                this.id = id;' `4 E  p9 K7 w: V3 B
        }" @0 U; y- f5 C1 S

. c* o' n8 [) E        public void agentStep() {) j" ]  s+ n2 J- Q+ t- h; w" _
                System.out.println(id + ":" + Globals.env.getCurrentTime());# p1 y% p& c7 a: D5 U: P! [8 s
        }
9 B- K2 C: P2 A$ o+ R}: I1 [8 `3 X; j
, P# @0 z" A4 r, D1 o
public class ActionGroupDemo extends SwarmImpl {4 f% F  g9 d8 \, o. C
        ScheduleImpl schedule;
- i+ a" A8 x( W& u        ActionGroupImpl actionGroup;
: s. i7 _7 s" p1 {* y        ListImpl list;
; X( X0 ~( `  K9 E1 L        char Id = 'a';( h- |, N# p1 E' R$ i

0 u) W) N  Y! u4 A/ |' k" ^        ActionGroupDemo(Zone aZone) {
( x9 y2 q, e% D8 r0 Y. g                super(aZone);
; p/ l# F7 l) w, _2 M4 H                list = new ListImpl(aZone);3 C" w& B! ]# ^* x% `( f. x* V
                swarmSetp();
/ i( n0 w8 W  a9 i                actionGroup = new ActionGroupImpl(aZone);
8 J1 E0 L" u. g. X  w( S/ R/ ?                schedule = new ScheduleImpl(aZone);7 A% t1 Z  b) _; e( s5 |# ?- d- v
                try {7 B: g. b1 n' |1 W6 F8 g/ ]7 f) ~
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* D* b8 E6 U/ X2 }" U8 d  Q& }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) w8 E& f% l! R$ s& n: o
                        
, S# u3 \9 x2 H                        actionGroup.createActionForEach$message(list, agentSel);
6 h4 j5 C/ [/ z/ t$ H! n                        actionGroup.createActionTo$message(this, swarmSel);4 n5 O; l3 A0 f7 q
                        schedule.at$createAction(0, actionGroup);
# e8 n" x3 |  D                        schedule.at$createAction(1, actionGroup);( y- S8 Q4 i! P6 S  J/ ~
                        schedule.at$createAction(2, actionGroup);
' X/ q1 R! Z9 h7 t
# g! k% ~5 ]$ _                } catch (Exception e) {
* I0 u7 ~5 W% B0 q7 w/ @' ^6 t                        e.printStackTrace(System.err);1 y# ?& Y& A8 l
                        //System.out.println(e);: P2 y/ B+ f6 {. m* {+ h6 m
                        System.exit(1);
3 x9 U5 N8 ?* k                }; L7 @  \3 r" f  u  X
4 c+ c5 w, r1 o) a( ?+ ]

5 N& b" d) K& U: F* j, t3 `        }
" H% Q+ @* @- h% q6 p* e1 s- F, L% V1 b8 A5 Q; \7 f6 M) O7 f
        private void swarmSetp() {% X. \) l$ z* I8 \
                list.addLast(new Agent(Id));
: E! f. Q6 D0 X. a" p8 Z, P7 N% C                Id++;
, u0 k, E, S2 ]        }
6 n3 O( P: a1 }) A. V# K( e8 d* y  n! ^
0 Q8 f# Z$ H' N! F5 O4 \        public Activity activateIn(Swarm context) {2 r; C: I; e; d2 [# `5 z7 @
                super.activateIn(context);1 ]! r% W" R& M% q& L& }' ~
                schedule.activateIn(this);7 w7 C8 f0 l& i0 H% P/ x+ ?
                return getActivity();4 |2 l7 a/ |. |
        }0 J+ r! j, H6 U; X( ^
9 h& ]" X% S8 z+ P, q& o" p
        public static void main(String[] args) {
- C) G0 G4 F( B6 q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 R8 L/ q* P: y& G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 I% y% g  H5 K! n* f3 r                swarms.buildObjects();- r! c5 Z  z0 g& R$ O$ j7 V7 o5 ~
                swarms.buildActions();. t4 x/ @$ d2 V# E# S9 w9 D
                swarms.activateIn(null).run();
8 e  T: r1 x' j1 i% N        }
5 l- @9 }& A3 B) k9 J9 f% X9 g0 S% x
( U/ h  q& R% T3 H; f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-22 10:16 , Processed in 0.015839 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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