设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12577|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# H% Z( h6 u6 j% H/ l/ B7 m+ o' _. U& g9 L" r  ~" ]% X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: C1 [6 d1 C8 l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- }+ g, d' U" E) [4 N2 r+ V
swarm.SignatureNotFoundException* z( Y: }8 J/ ]* s" i% s5 Z3 ^; x$ u
        at swarm.Selector.<init>(Selector.java:76), g2 R% X! [( H3 i" r
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; v$ S: G8 s7 s2 _1 \4 y6 p- _        at ActionGroupDemo.main(ActionGroupDemo.java:67); c4 T5 q' Q- w
2 h$ E' a/ i. O3 m+ k

! c7 I2 }/ a. X6 O! b) `1 yimport swarm.objectbase.SwarmImpl;
! [. O/ w# M1 p3 U& A$ w& oimport swarm.objectbase.Swarm;( u3 G( T9 K7 H. j
import swarm.activity.ScheduleImpl;. r( c+ e+ x8 h; _8 l
import swarm.activity.Activity;- T) y* r$ U2 S) x6 v! S1 F
import swarm.activity.ActionGroupImpl;
: m( ~9 f! p% }import swarm.collections.ListImpl;
) [2 ?7 N2 ]6 U, j3 B- D; }& ~- {import swarm.defobj.Zone; 6 _. b( N4 Y' a/ q8 {6 _
import swarm.Globals;
$ `  r0 V* F5 @7 eimport swarm.Selector;9 w: ]- l( d8 p, F+ ^1 m$ d) W. @
import swarm.activity.ActionGroup;
) c$ j- I  L" m" U* {class Agent {9 A" ]  M/ c5 m
        char id;% L  f* o* F/ w1 G  Y3 w2 l

- [, J, E2 ?% L" P- V( s        Agent(char id) {  X- `9 j  C5 y& `( W- q. D& i
                this.id = id;0 _, n. z: o; s2 H7 [) \
        }, |* Q! R1 f, f4 M! `
, B. B$ J0 f  u
        public void agentStep() {* o1 P; d* l' ^& e: |5 d
                System.out.println(id + ":" + Globals.env.getCurrentTime());) \9 N" ?! M) _( ]8 F- J: e
        }
7 K# z, i4 S) F. T. u( ?# K}
+ T" S2 o. `6 E. d% F/ k! A4 J  u3 P9 f+ b$ d& A0 O
public class ActionGroupDemo extends SwarmImpl {6 L) v% W$ N% t) z+ H( _- A4 X
        ScheduleImpl schedule;
/ w& b3 ?( h; \! t# S* X, g        ActionGroupImpl actionGroup;" b1 K* O3 L$ [6 u# P. M) |
        ListImpl list;
' t; x& R& i/ [/ J& s* r. k6 v        char Id = 'a';" p7 x  y) |- R: V
" i- ~% W! W$ t# a$ P- E
        ActionGroupDemo(Zone aZone) {. d6 K( M# y! W% h1 q3 b0 j
                super(aZone);
1 v! p# ?* l' H                list = new ListImpl(aZone);. F" M+ f6 E% e6 E
                swarmSetp();. a7 M# l0 E+ k, B2 X& t- c! J
                actionGroup = new ActionGroupImpl(aZone);# ?( E5 [2 K3 [. B
                schedule = new ScheduleImpl(aZone);5 [7 {8 I+ x& N: n' ]
                try {
/ n4 T4 G5 U: f! `, Q0 T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 P" B1 U1 v  Y$ `/ m
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' X0 f# Z! i4 L1 Q/ f8 ]
                        
* Q- k+ X: {$ V                        actionGroup.createActionForEach$message(list, agentSel);
* f" ^' ~% I5 J% f                        actionGroup.createActionTo$message(this, swarmSel);
/ @# J. h" e% _) U# k/ Y. `                        schedule.at$createAction(0, actionGroup);
9 h7 @+ E+ _' V' g' A                        schedule.at$createAction(1, actionGroup);
) Y$ i4 j+ ?) ^4 C# R6 v, b6 X                        schedule.at$createAction(2, actionGroup);7 p9 ~! ]( H* q9 j# s6 _

$ s' ?$ B0 S6 p8 f* ]4 r$ L' S                } catch (Exception e) {
9 A0 l. p/ \7 N  j0 `                        e.printStackTrace(System.err);
/ R) W- @( _5 d                        //System.out.println(e);$ E) a" v- E5 [) Q  I
                        System.exit(1);
( \6 n9 Q: N/ }* }3 |8 f# ^                }
- p0 q% K+ p7 P) A$ @" F6 J
4 _  }& k* x4 f: S- }$ ^  C9 |' x& `( O. c4 O+ p
        }2 [. L' \% s; o3 o6 ^/ C

; i% m* y- @. n' E# h        private void swarmSetp() {' I$ j- Q. l5 P0 t' t2 u
                list.addLast(new Agent(Id));! Z% O/ \5 ?1 t" b
                Id++;
9 T) O+ E# r6 m) r        }
6 S+ v% U$ O% @& u; G% n! b7 Y. `* I6 w' e: E( ^8 @& T1 ~
        public Activity activateIn(Swarm context) {
; _4 s, U1 g5 s3 t; d+ e  @4 A- `- I                super.activateIn(context);
: O1 o7 {( A$ s$ A# k4 l% [                schedule.activateIn(this);
/ P% @. P1 t; m$ [7 T$ O  D" w                return getActivity();* E8 X4 }( ]" C8 B7 G
        }
; ]! c; ?+ x) x" ]; z0 P0 {$ v: W: H+ ]$ N
        public static void main(String[] args) {# B7 X; s/ a2 t! n& [$ T5 ?2 Y( ?
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, d/ z' M; l' W& P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# z- h/ }+ K- Y' v
                swarms.buildObjects();& }2 ^+ l( z  Q/ u
                swarms.buildActions();& E" j( `3 {# F+ q. C( b: y8 p# t5 Q
                swarms.activateIn(null).run();
; V4 u+ f, p& ]3 ]; I* E# V        }
: O+ F( U  J4 }$ _
6 }7 y& v( f2 e}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-12 19:25 , Processed in 0.014274 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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