设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6046|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- Z1 [) \; G0 N, U" B
4 T, }+ K$ x/ H9 L# z% j; q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. y  l0 m9 Y- o# p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 _3 n$ M6 d* X* r) N$ J3 J
swarm.SignatureNotFoundException; `: r( B* n/ L% g- O
        at swarm.Selector.<init>(Selector.java:76)9 X+ K+ L. t6 N$ e' M
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) \0 Y1 r2 y1 L" e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. e" q0 Q- Y" ?' S- d# k! ]" r) s9 h) d5 f( X& c

4 W9 O1 M# o/ i5 x, }3 X: ?, simport swarm.objectbase.SwarmImpl;
4 \  O1 t$ y7 t9 R2 a; _; g2 aimport swarm.objectbase.Swarm;
* Y+ y' g5 i0 m, Timport swarm.activity.ScheduleImpl;0 N5 R! P9 z# t" u+ ?- i
import swarm.activity.Activity;
3 t# m; C! ^) \" Q8 i' Simport swarm.activity.ActionGroupImpl;
1 S1 Y/ i4 C. s, e' J# K: Eimport swarm.collections.ListImpl;
, X/ |* C& U9 _* O, T1 A( l+ F' vimport swarm.defobj.Zone; ; n% s/ N2 Z: h6 `3 h9 L: O% g
import swarm.Globals;
8 k4 ?( j" z1 L. o3 @8 }1 Z' wimport swarm.Selector;; I! i. G9 E: J/ I- H/ k
import swarm.activity.ActionGroup;
1 n; U: [. u: i2 bclass Agent {. r& \7 ?! [  g
        char id;
% t& z% N- k- Z- ]
# {7 e& ~! T6 f* N8 E% l        Agent(char id) {, a* l  ?$ E" z+ ^' d9 d! M+ n+ K
                this.id = id;
' T7 y- B$ e0 J- P: c        }$ i4 u( Y5 x4 D
! J) h* h: [& P1 D. a
        public void agentStep() {
' {2 b* I6 d/ K' D, m                System.out.println(id + ":" + Globals.env.getCurrentTime());
. q8 B: q, ^2 T  j! _: G) g        }) _) T8 @7 F0 W
}
2 r6 m& B% w( `# v: j0 t1 }2 \) a# n" }, u6 i) n' o5 S& @- b
public class ActionGroupDemo extends SwarmImpl {# f! O3 H7 }( B" I8 V2 R0 W  u' \
        ScheduleImpl schedule;' B* h8 i1 U: \
        ActionGroupImpl actionGroup;
! X. \) b* P: p3 y" _! C3 I, ^        ListImpl list;7 ~6 q9 @' O: |% N0 d
        char Id = 'a';
  e# x0 u- |* L- m5 r9 o$ V4 [5 q3 t6 L% V6 _
        ActionGroupDemo(Zone aZone) {7 @9 j2 a% p; q! i1 B
                super(aZone);. H/ A! p  V# ^
                list = new ListImpl(aZone);$ m' P) B( s" @
                swarmSetp();" b! f4 W2 K1 H9 ?5 {$ x; a
                actionGroup = new ActionGroupImpl(aZone);5 w6 {4 G+ k- y3 B& j
                schedule = new ScheduleImpl(aZone);
7 s- J: n3 z: G                try {4 _- M& [& _3 Q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 X7 x0 Y: f. M: m' A
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% K/ p4 @# D2 P% D, ]
                        ! K7 c9 ]4 H. \
                        actionGroup.createActionForEach$message(list, agentSel);
* s  I" w  c4 {, I+ F: P  R                        actionGroup.createActionTo$message(this, swarmSel);
* T. P' |! g8 T) J) h# s: P                        schedule.at$createAction(0, actionGroup);4 G5 x) I/ S  e, b. H1 a2 m+ f3 s
                        schedule.at$createAction(1, actionGroup);/ G& q6 Q4 u) W' \) v% @
                        schedule.at$createAction(2, actionGroup);
4 z, O! B4 f& n$ v0 b% D. f( O) H* ]' w5 H+ ]" Y
                } catch (Exception e) {" I) `* o% W8 i  _
                        e.printStackTrace(System.err);
  G, {9 v$ U1 ^1 m, O- O5 }                        //System.out.println(e);" K4 X* G: J( b- `. n: o& U8 U1 p9 r( n
                        System.exit(1);
9 \! J) {( N& L+ f" z! W, j) ]                }* r4 [) i% g% P( h3 V% T# O

8 C. ]/ a1 t+ f5 u* M2 W
& ^# b: f8 n$ B$ B        }
+ ]; N# b2 W* }; ~; E! j* O4 \: O& k8 ~) M7 Z- p, `
        private void swarmSetp() {* m3 B4 ~% l5 `( T. K
                list.addLast(new Agent(Id));
6 R3 N, |1 |" s                Id++;
+ i8 M! _- W4 N# s1 }$ j        }
! r; A& I: W! H. A8 s. L; ?
3 L3 f0 G0 @1 a8 ^+ u        public Activity activateIn(Swarm context) {, k& p$ Y9 S- v  C
                super.activateIn(context);; O5 [5 d/ O  g
                schedule.activateIn(this);
+ a1 F' L$ C- t' c$ @( W5 [* d                return getActivity();3 u% [% Q; w% J2 ^; V0 d
        }
0 y6 N' v2 A! A3 j" [( b9 R# m4 o  ^$ O- F
        public static void main(String[] args) {
/ s) X- \7 h6 y  K; M% @# ~                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 f/ N( I) h5 f! Z1 i  t                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 \" e$ }5 r3 ]% K9 _
                swarms.buildObjects();
% e, a6 F% ~# B/ S2 s* q8 s                swarms.buildActions();
+ E0 u7 G! n8 t- N, b! M                swarms.activateIn(null).run();
7 f& C5 c0 R7 _% ~: J3 b/ l, C9 q        }
% G& _2 R+ y7 n7 g5 g7 Z) D3 p3 m9 M7 O! V* W
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-15 02:27 , Processed in 0.018062 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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