设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12358|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( r! F9 G0 i' ~) w

9 Q! g* [" ]2 q9 U5 e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 C# V3 K0 D0 C: U7 P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ \8 M  O: y' m- g9 ]/ |+ {; C4 F
swarm.SignatureNotFoundException, b4 R1 I* J' a/ Z9 h
        at swarm.Selector.<init>(Selector.java:76)! F3 \2 p& M. ?! _( t* d
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& G1 H: Y; C4 o/ B+ q5 }, }+ f/ h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 w& }  c- p6 O  e' o1 Q
1 i' s0 F; ?6 T' L. t! f
: J& {) w  A2 s0 H% j0 G3 fimport swarm.objectbase.SwarmImpl;3 k) s; \9 ]+ u3 ^( y& w8 O+ |
import swarm.objectbase.Swarm;. c2 ~& c. c; P, p4 g7 C; }# J: u+ |
import swarm.activity.ScheduleImpl;
$ D' t; f' X: u3 r2 e* l1 Dimport swarm.activity.Activity;  J3 w/ \: G$ |% z
import swarm.activity.ActionGroupImpl;
7 a( @# Y6 s" \7 G8 w3 ~import swarm.collections.ListImpl;/ F, U4 b* T9 Z% D  ~) I
import swarm.defobj.Zone; + W- j$ M; L: e5 x4 |+ T
import swarm.Globals;) T" t/ |6 t& ]
import swarm.Selector;
+ _& }$ e/ t6 L7 S. u# m9 `# Jimport swarm.activity.ActionGroup;
- K5 M4 j1 l8 }$ h( [* jclass Agent {$ ]. k$ _9 f  {: s
        char id;
; n; u3 N& M$ K; ^
6 s4 A' @5 ?6 F. j- X; V        Agent(char id) {& L$ N% {" L* U, u. d7 X# i# v
                this.id = id;! q; m( z- C1 L0 h% B# G8 |
        }
5 a: q8 c6 _$ i! D* Y: i
' M+ n: r$ i7 o        public void agentStep() {
( W3 l; }! O- H& R; `" S' d! E                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 R: F$ L- M7 w5 m7 H8 v+ L# g        }- v# k9 x8 F: E- ~" G' r0 k# e
}
) z7 y. l! r( m& X  P$ M
" W+ l, a4 g: q. X# hpublic class ActionGroupDemo extends SwarmImpl {" B% V' b- T2 c& `- w2 I0 c
        ScheduleImpl schedule;
+ C  j( Y1 a% P6 z) ?& y: H        ActionGroupImpl actionGroup;
; v$ b4 j# Y8 L7 s8 p- a- q: }        ListImpl list;
# A  e' D: b$ \" p4 c        char Id = 'a';
% [3 U' x2 V3 a. _( c8 j5 z
7 E7 V" Z4 l1 p        ActionGroupDemo(Zone aZone) {
& l: ~  k/ y$ D! P                super(aZone);
2 c& l! i/ y; l, T9 }9 `+ u                list = new ListImpl(aZone);
/ e  O0 w' s; A& K                swarmSetp();4 u+ p+ a: L" z7 o1 x) j
                actionGroup = new ActionGroupImpl(aZone);1 s& k- \  B1 W
                schedule = new ScheduleImpl(aZone);5 B% n' L: V8 T/ ]* r
                try {% P7 x: y0 ^: z4 O9 T
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; `- z" ?+ j3 d2 t                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, g' T, g+ r7 D6 \) A6 i; u8 _
                        
9 P2 X! [/ w, \2 H                        actionGroup.createActionForEach$message(list, agentSel);
& t9 h- U* y) p7 o5 U3 z5 y( J1 w. O                        actionGroup.createActionTo$message(this, swarmSel);" ~) a6 s# w7 C4 ^
                        schedule.at$createAction(0, actionGroup);
4 a( u: U; b! s! c& C+ a                        schedule.at$createAction(1, actionGroup);
7 H0 b" p4 r/ Z6 }                        schedule.at$createAction(2, actionGroup);" e$ P7 ?# @% h
% _2 r5 Y3 g) R" R+ b7 ?
                } catch (Exception e) {1 S% L+ @- T2 @& z; G
                        e.printStackTrace(System.err);
: h, w  b2 L" Q$ a+ W                        //System.out.println(e);0 J: y+ O6 }- c) j
                        System.exit(1);
, ?/ |4 T3 `" U                }
5 Q/ ]$ A; ^" e; f5 Q/ k& W4 S
9 y1 A% ~2 T; G/ v8 b) Y( E: x) ^% q( K  h" a, z% W* ]( e% b! r
        }
9 l- `  b+ o! j0 I9 S" Q. `9 D) n! m8 }8 ^' J/ ?. i3 @
        private void swarmSetp() {
# H& ~2 n9 \! G. {3 B! m3 Y7 x+ w                list.addLast(new Agent(Id));
+ e5 n; C9 W/ B1 G/ L                Id++;
4 V0 J$ U/ R9 a        }+ w. [: r# S0 T& q

# a- f6 k; g. ?7 E        public Activity activateIn(Swarm context) {
1 [$ m  l9 k: B1 i& P2 A                super.activateIn(context);
3 Y  _2 _( u; k                schedule.activateIn(this);
9 r- x3 f$ l) `3 l+ p. H) a( H                return getActivity();
% i& f- R. Z2 x7 F% w+ v  v3 Y        }! N0 G" r5 k8 ]9 I2 P+ l$ P
' j; x- `% [  F- D# C2 g4 r
        public static void main(String[] args) {9 j7 O0 z3 ?# a. i0 J& c, N
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! t5 G0 Y; {& S( i- W
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ C5 L# r$ B- D/ ^2 m; [- G
                swarms.buildObjects();/ F; k. ^# W: X: }2 b: u
                swarms.buildActions();8 }8 R& P! S# O9 ^: Q% P: m
                swarms.activateIn(null).run();
0 ?8 w1 k9 L% F+ J" N+ n        }
5 x; {4 R& w* }! j/ {3 m
& [% d& |) h: w0 {# D}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-6 12:23 , Processed in 0.014069 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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