设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4696|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , Q* K; R2 P( z. `* O
. A2 r% V+ z8 y! }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 y+ S1 H' h* }' b8 L/ V: H% U+ q2 a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; E' r, n3 l; m# J) ?: `' Jswarm.SignatureNotFoundException- q1 t' a/ X- e9 c, \, C8 q
        at swarm.Selector.<init>(Selector.java:76)
. k$ @1 B9 o+ {9 D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 y% c8 l+ J$ {% Z; j        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- D% q1 r4 ]1 ?" D2 q' `$ M8 {3 W! Q4 n" i1 ?% H& Y! {! E

8 X1 a. M# T% g" k6 o; @, v- ^import swarm.objectbase.SwarmImpl;
5 ~6 n$ H5 Y% R2 [( simport swarm.objectbase.Swarm;" w& j, ^! _; @% c7 M
import swarm.activity.ScheduleImpl;
+ s: C8 Z6 {" m9 U2 \import swarm.activity.Activity;
6 h. V% o( O* {5 i" }3 himport swarm.activity.ActionGroupImpl;, ?) P/ M7 E2 h0 j
import swarm.collections.ListImpl;
2 d$ U) @- M2 h, w3 T7 Yimport swarm.defobj.Zone;
# N( A2 E% R' U6 K  aimport swarm.Globals;
! y7 z4 ~" G* m9 Q: iimport swarm.Selector;
; G: Q( p8 p: `2 b- ^- b/ Ximport swarm.activity.ActionGroup; 2 S) e- _5 N9 l
class Agent {; \; m& t- P( f. l- l3 u
        char id;
) v4 |0 h6 Q: @/ T
, ~& y6 V' A9 T  M  D) ]6 g        Agent(char id) {2 n7 h# U: j6 @
                this.id = id;
! v/ ~% ?& Y) E% h/ m/ i" y        }5 q1 R3 F* X; `' A

: H6 I4 h1 [7 r  z        public void agentStep() {
) z& P8 g( {6 o                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 r6 }3 G, D$ T* |4 N/ H        }
( I7 J3 d) A9 ^8 }; v2 L2 ^& W}
8 ?& [( W& Z# }# p
# `3 C! J4 I" {- f- spublic class ActionGroupDemo extends SwarmImpl {  F2 l! ^% Y8 c* i+ t
        ScheduleImpl schedule;
. I8 ^1 e; e, g5 _        ActionGroupImpl actionGroup;
+ ?- T& n* r( B        ListImpl list;, D$ r" W2 H8 L0 ^& h9 q
        char Id = 'a';
/ Y1 N/ b9 k7 s+ r9 k
3 |9 Y- M7 [& L( Y4 |8 P        ActionGroupDemo(Zone aZone) {9 t) _) a- n0 e1 T4 H
                super(aZone);2 g, z0 A& P) ]; U( ^
                list = new ListImpl(aZone);
( P* X' t, I/ b& Y2 c  {                swarmSetp();. |+ O* g: V, }# T; c4 k0 M6 C
                actionGroup = new ActionGroupImpl(aZone);2 c8 `+ c; i! U5 H2 @. t$ }! h7 }7 K
                schedule = new ScheduleImpl(aZone);
, U6 f) d9 F% y- Y" y                try {) n: F9 L  ~8 F2 w0 j, I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 y, Y1 C: \! E1 _8 }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) P1 A* H) W% l8 p: i5 J6 O                        
0 p: l$ {7 {- Q, x9 I/ J                        actionGroup.createActionForEach$message(list, agentSel);
& g+ a3 {* v7 F, k! i# J9 W                        actionGroup.createActionTo$message(this, swarmSel);6 t- j0 ~5 k8 ]* ]& B
                        schedule.at$createAction(0, actionGroup);* ~' s! e) p5 ]+ b# b' g
                        schedule.at$createAction(1, actionGroup);
0 S0 c" J* j. A/ k1 X                        schedule.at$createAction(2, actionGroup);; i' _& R  [3 M: J, a& a

+ u" H& v  J" U                } catch (Exception e) {4 Q- O% N6 n" Q6 P
                        e.printStackTrace(System.err);
& \! d; x6 D" o/ i& L( L                        //System.out.println(e);
! B6 [( P: R; i' L% C                        System.exit(1);' w! H  d2 l$ C% v
                }& N' ?3 s: }0 V% |

) E) c+ k3 a) N5 x, F
: V3 F! v, V% y9 f, l. H. A6 W        }
' t. m' A; p$ J3 ]8 {
- `% N+ a# G8 O) ~# z        private void swarmSetp() {" w  o3 C& g% t; M9 t8 L
                list.addLast(new Agent(Id));
& t% x. @  G+ c5 j5 r3 |                Id++;
9 [3 a4 U" g1 w1 C0 d        }" J9 W% e+ ~+ L, X% Q- C- P

" t) u1 r& F# _. C7 S$ k& z1 `        public Activity activateIn(Swarm context) {0 ~! S3 w8 P  f9 K  h; {  b
                super.activateIn(context);
" a7 t+ K8 V2 Z! q2 {                schedule.activateIn(this);
1 X# j& M3 D1 v6 u" R- y1 Q$ g6 w                return getActivity();
8 }# q7 j6 {- M) G+ ?  n7 w( c        }
! _. T+ o) Q$ }/ w
# D* ?, g. U. E# S: j        public static void main(String[] args) {( T+ K! Z+ G3 e. {
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 C/ J* ~$ ]- t' x+ T' o" n: e, z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ y* P7 ?+ f' W" p. [                swarms.buildObjects();; B/ z- a6 q5 a2 P
                swarms.buildActions();
! G% `3 r. ~1 l& x, q7 D% F( T                swarms.activateIn(null).run();
, J* U/ t( C$ m        }- i2 n+ f" L! \: Q, Y: Y* c' f
3 t# }* W8 B& f, n* s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-6 21:05 , Processed in 0.020411 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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