设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7105|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% n$ F2 I: I7 @- T+ y# c# Y
" F2 D) C7 s6 L- J# P! B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ V/ D( w' V+ h7 N& H8 _, C6 t1 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) I0 j  ~! m% }/ `swarm.SignatureNotFoundException
0 S0 j- Z6 H! Z0 S* \0 c, Z        at swarm.Selector.<init>(Selector.java:76)
  N4 t% ~$ Q+ \4 L5 T: _" @! e, \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* M2 M7 H2 g" W5 j+ x) Y        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( q( R: b0 R# ~) j; Q3 @, C, d) y

& R# }1 p% N0 o8 c/ G2 L8 iimport swarm.objectbase.SwarmImpl;
1 r4 E# Z& I$ Himport swarm.objectbase.Swarm;
9 x. M  O$ d; T, Aimport swarm.activity.ScheduleImpl;
' w, e+ B! o: vimport swarm.activity.Activity;
7 ]  k( h" W& }  ?$ E+ z+ k3 Nimport swarm.activity.ActionGroupImpl;
9 Z- u" M" ]4 Cimport swarm.collections.ListImpl;
/ k: A" c; H$ @$ i/ ]import swarm.defobj.Zone;
* J5 e( c( m# ^# y0 f8 wimport swarm.Globals;3 S" Z7 W8 e( [: [5 ^
import swarm.Selector;
+ w/ o; B) \% R4 Y! `/ gimport swarm.activity.ActionGroup; ; I) T! E0 o% Z, U2 ?  q) ^
class Agent {
3 Z' U5 G- O& p" C7 L( a+ D        char id;& Q5 u: B! V$ S9 v, E7 g: m% A8 ?
5 `; x" A) w& l; b2 m8 ^9 W* A- h
        Agent(char id) {1 u  I& M0 Y2 V: `# s: i
                this.id = id;/ u- c! }% c5 a7 v/ `
        }
' s* x3 x. o  x: [$ X" A
. d+ K+ E$ T& Z        public void agentStep() {
) r/ L5 w9 T5 o- u0 h/ x                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ B+ r: k+ d' j, W        }  U; Q6 A+ l  I) }
}
2 W/ m# n, {. t# W+ G: J) s4 R  k; L. l' H) n1 I3 Y+ D- b$ u8 |
public class ActionGroupDemo extends SwarmImpl {
- o4 n' g8 _$ Q: Q) ^5 x9 A        ScheduleImpl schedule;
3 p6 a+ b& Y7 W: I2 ?        ActionGroupImpl actionGroup;
* D8 U; p9 Q. x* ]) h        ListImpl list;
( A0 j, {& j- F4 j5 y        char Id = 'a';
3 U4 }- y1 V7 y+ r. B- V1 n4 ?% ?2 p) ]7 T) c9 g5 O+ N0 m7 s$ B
        ActionGroupDemo(Zone aZone) {
0 o. ]) S( L; m- ?0 J5 J2 O                super(aZone);$ L- V6 i7 w0 x! |0 n% f  m
                list = new ListImpl(aZone);  U) \- z, B3 G  D
                swarmSetp();# s( K2 `) v1 @# {+ k* H! @
                actionGroup = new ActionGroupImpl(aZone);, J4 @2 N& I# W/ F0 P. q
                schedule = new ScheduleImpl(aZone);' k# W2 s" E$ P4 k1 D
                try {  L' x1 E  O2 A" z/ [) M2 }9 m, Q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 ?4 Y, e+ v1 J; b- T! Y6 R7 M                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, P% l2 x: A  c  e
                        ' z+ X& U1 l1 m- `
                        actionGroup.createActionForEach$message(list, agentSel);4 h8 Q8 p2 H+ k9 ?7 F5 X
                        actionGroup.createActionTo$message(this, swarmSel);9 P5 B  Z9 W. i5 r# ^
                        schedule.at$createAction(0, actionGroup);) e' k( G1 z4 d" B. T4 \, V
                        schedule.at$createAction(1, actionGroup);
5 i, _0 r# O; r* D( }; J' U" d                        schedule.at$createAction(2, actionGroup);) e! ~' K. S0 y+ Z1 j, h$ {
$ D: p6 c4 s( L. v& C  @. p
                } catch (Exception e) {1 H# S6 c! o7 p! L5 \
                        e.printStackTrace(System.err);9 d/ n! W3 c, H; x
                        //System.out.println(e);
1 Z  o4 o' H0 L& A! p6 `' {                        System.exit(1);/ H) U0 ]2 H: A* A
                }
. \- n3 D( L6 A( M, l5 k& L
" r( Y& T! S* i/ m; n$ q8 E9 Y0 ?9 w, k( R. U
        }
$ x- T/ w6 y) E5 a' d6 }2 G9 T' I. d5 s9 a+ l6 b
        private void swarmSetp() {
; ^! L  e/ P# Q$ B' V8 F9 w/ L* y                list.addLast(new Agent(Id));
- \3 u' _' i. s) z* O& i                Id++;6 r% @* w5 q* E$ I/ A& P
        }1 m; O& x  a# D! g9 V. b& q# Y

' ^, O5 t% a4 ~, e        public Activity activateIn(Swarm context) {5 I% t4 X* l3 L
                super.activateIn(context);& T! g8 W8 O! A0 C5 Z
                schedule.activateIn(this);' M; y9 O  m: @1 T2 ?+ M0 R
                return getActivity();
' u$ U0 }0 ^, x+ ?. v1 {; m) ]        }) c- N" t) j' \% _4 _

) }* m' a, y* y% g$ Z" d* U        public static void main(String[] args) {
: p; G# f$ n5 T) }0 T! [, j, L                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 j6 k% X( N2 f                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 W2 S9 ^  f" X* e! `0 s+ Y
                swarms.buildObjects();: U8 y4 A+ {+ O: B$ `. W
                swarms.buildActions();
6 l7 |1 w$ p1 S2 ]9 I. q$ M* p                swarms.activateIn(null).run();  [& y+ a" e* X7 y. X% p# W
        }, l6 K" h6 H' o8 R9 V! h* ?
$ m8 o/ a4 Q* \! E6 g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-19 13:31 , Processed in 0.015619 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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