设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7438|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ Z3 w" d$ U5 D6 o- V8 }+ T
% B8 [( B# l1 I, ^0 P8 |/ h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ o# m+ C$ \3 Q5 d4 a& U- o, e) B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 k0 h& X7 ]3 L6 e' T# K8 q
swarm.SignatureNotFoundException
# F5 G, ~  w+ h6 }" g* [! Y        at swarm.Selector.<init>(Selector.java:76)
0 x( H& s9 R4 ~7 c/ \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). n4 v0 w' ~  a" }# h1 M
        at ActionGroupDemo.main(ActionGroupDemo.java:67)# G6 ~- o' L* p# @
6 [) e0 _* ?7 t2 V3 x# i
$ o4 z7 z2 j. K& L" O3 T3 V
import swarm.objectbase.SwarmImpl;
+ O7 Y8 F4 |/ s' F1 Wimport swarm.objectbase.Swarm;
  U! G- d- a* ]8 |% P4 n- Himport swarm.activity.ScheduleImpl;
3 e% [' \4 m* k  F9 v) Wimport swarm.activity.Activity;* D! C; b% U' Y, |$ R" {7 J9 M9 p" q
import swarm.activity.ActionGroupImpl;
! o  i; Y' P# k5 Uimport swarm.collections.ListImpl;
5 M: T9 v3 _" _5 m4 |1 Ximport swarm.defobj.Zone; . E1 b6 b6 y' }) Z6 C+ B
import swarm.Globals;
/ v/ M0 P3 h' Z+ K3 p6 Vimport swarm.Selector;
& \5 s) q* U8 |. {# X1 S' `import swarm.activity.ActionGroup; & O3 X" D1 F& W4 @
class Agent {
; W4 N) _& B  F7 Z  U; f7 k9 Y( P        char id;0 i2 T1 j# X! g& }- o

5 {. h9 V  P2 X) f4 t4 b4 m        Agent(char id) {$ Q5 o& d. f' n5 D% A
                this.id = id;
; {' G- r  _$ ]/ z: r        }
9 r1 ^$ N2 B6 T7 @- S  {9 f, [7 q' u9 u
        public void agentStep() {* k2 B7 C& H% Z( ~* Q  j
                System.out.println(id + ":" + Globals.env.getCurrentTime());
( p5 q6 W* H5 ~9 F; k- h% G5 Q* j        }% j7 _9 ~5 B) ]
}4 @, k' F! o; ]: h& U$ m

/ u: t8 o( \5 O  R, N: Ypublic class ActionGroupDemo extends SwarmImpl {$ z( S& l+ ]  _, a
        ScheduleImpl schedule;4 l4 K( W) t, h+ T
        ActionGroupImpl actionGroup;, ]3 y' v* u% ~  g0 Q
        ListImpl list;
; y8 p4 F% z4 G; l% p        char Id = 'a';
+ e/ K" M, B5 r6 ?7 P+ @* f+ f, F" ]- L6 C
        ActionGroupDemo(Zone aZone) {
; o; C- f. W6 S                super(aZone);# W$ A+ ?2 g- O7 @
                list = new ListImpl(aZone);
3 K8 O% G7 N6 [; o: r                swarmSetp();
0 e) K- r) S0 r                actionGroup = new ActionGroupImpl(aZone);
/ Q" F1 A- `1 y, ^& m4 K2 h                schedule = new ScheduleImpl(aZone);* l* [* c2 f1 }
                try {
, M& _0 J- \+ [/ Q! S8 s7 u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 e8 h4 A! y* S6 @8 f+ N
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 `/ h4 T0 R, C3 g                        3 E- _7 w0 U1 N) v$ Y
                        actionGroup.createActionForEach$message(list, agentSel);
7 }1 Y+ }8 c; B9 V! v5 u                        actionGroup.createActionTo$message(this, swarmSel);- w" w3 p* Y/ }7 \
                        schedule.at$createAction(0, actionGroup);* F# F0 O& [3 h$ t: `
                        schedule.at$createAction(1, actionGroup);6 K( ~2 e$ J- _2 @% Y1 u5 Q( W% Y
                        schedule.at$createAction(2, actionGroup);
5 ^( H+ C4 i# D8 x2 h6 l/ g+ q
) \4 k6 e4 R3 Z, B$ D                } catch (Exception e) {7 ?+ J, ^3 h! q* N0 f
                        e.printStackTrace(System.err);9 b0 z9 A1 B; d8 v* z8 Q4 h; n
                        //System.out.println(e);
) k- ?* I( R2 ?. x7 @! r5 J                        System.exit(1);: X  A& E, b$ [7 G) Z
                }5 ?# I& N# d" u7 I3 j5 x
3 d: j$ g0 U! h* D

4 o) u, u# |. e# m1 ~  h& x- c        }
/ T6 M, M5 h( a6 j. {3 G0 t2 }
) l, S4 v- i3 C2 R% i        private void swarmSetp() {
' @( ?* H$ n" Q/ a+ H                list.addLast(new Agent(Id));( ~! B6 S/ f5 I3 r$ L; ~
                Id++;1 A& ]" M6 p3 ?# H+ a& I# a
        }% j6 I" @% W$ F( n6 H
' l6 Q* `. c+ m8 z0 T8 Q
        public Activity activateIn(Swarm context) {/ a; f* m) k: p' O+ M- i
                super.activateIn(context);
1 C# S% M5 X4 H( T) L, L0 k4 b; R                schedule.activateIn(this);
# A* B, z* F8 W; e! T! Q( [                return getActivity();
/ E# {8 m4 I' s  \6 w" G$ T0 l( E  `! H        }. z; O0 E% C1 L

8 m" Q' x; ~0 t7 G" v+ }7 Y        public static void main(String[] args) {" Y: S& X/ q0 C6 L  j1 N
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 F6 V, k/ n% d+ P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. U5 T0 p% K9 y; S# f
                swarms.buildObjects();7 a" O! |2 X2 M8 X
                swarms.buildActions();' q; d8 _0 D+ [$ o1 k& p6 e
                swarms.activateIn(null).run();
2 W, i. t; {; ]        }
8 \+ u% O1 l$ g9 M" b3 s5 v! ^6 A7 R* N- _8 F
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-2 17:58 , Processed in 0.017403 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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