设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7050|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 u3 Y- G" {+ ^! k. C/ ~3 i- a$ j& F7 ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ H8 z' w8 f0 i" ^( ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& `6 w9 @9 k0 ~+ Fswarm.SignatureNotFoundException) h3 u1 Q1 b: h3 M% O0 D, S6 X
        at swarm.Selector.<init>(Selector.java:76)
- i9 g6 V* H+ E2 F. f& ^        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) a$ L) B! x8 T) r3 w- ~+ A9 e9 C        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ [& ]' S; ~+ n% N0 W. A  u, U
$ Q" ^9 w; w9 m# Q, G: _% f+ n/ V0 ^$ m6 \( c' L0 t  ~
import swarm.objectbase.SwarmImpl;7 J/ F0 r5 I" t7 n3 D/ L, q1 l7 H
import swarm.objectbase.Swarm;/ o7 i, |; \5 i6 E5 v' x
import swarm.activity.ScheduleImpl;5 ]  S, Z2 @- J2 u
import swarm.activity.Activity;0 B$ g+ w' ]% L$ ~
import swarm.activity.ActionGroupImpl;0 m1 \5 W, g7 R$ D' v
import swarm.collections.ListImpl;: p8 U2 e. u, M0 A" n; f
import swarm.defobj.Zone; " D' g9 b7 w% F$ D/ M! \- a/ z
import swarm.Globals;5 `. F! f! Z9 h5 @8 k$ z% z! E* Q
import swarm.Selector;
) _4 A4 ^8 ?2 s% `$ yimport swarm.activity.ActionGroup; ) A" i2 l2 }' E. x. N
class Agent {
' S% f% K1 ~8 k" h( {        char id;
( y& f5 p  u, ^
& }, T% `$ J4 f  F        Agent(char id) {
9 {; [4 o; e. K+ f  N                this.id = id;2 \- x4 H4 l7 f5 E% g/ o/ U
        }
2 n# v$ n8 Z% z/ B* h# ?
+ v( ], d. H/ z2 q& h5 W        public void agentStep() {! g/ J/ Z& r: O; C+ k
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 s0 a, u7 u% F4 v) J  G! z9 M
        }
+ J: C: r) A$ V" i4 f}, H8 `8 e3 o) x% }8 D

9 y: _/ O) ]4 o2 A9 N/ M1 [public class ActionGroupDemo extends SwarmImpl {
% c! L) ~6 M8 S; s- I: c4 f        ScheduleImpl schedule;
& z( l4 J) m) H) A. P        ActionGroupImpl actionGroup;
* ?% [" l2 N1 z6 {+ l3 B1 T        ListImpl list;
1 ?8 g/ [- m  `; B; x        char Id = 'a';
7 z) F3 m+ Q' ^  M# T, [3 f% Z. ^- }4 x- h# L2 Q
        ActionGroupDemo(Zone aZone) {
) m2 p- I4 B5 t                super(aZone);) v  N) c3 `+ p* m$ v3 ~
                list = new ListImpl(aZone);0 z- P# f7 C6 z# p
                swarmSetp();- O3 }; s! O; s& @# H7 Y. O5 p
                actionGroup = new ActionGroupImpl(aZone);
1 n8 ^: t0 y, s, F- {                schedule = new ScheduleImpl(aZone);8 W) ^! P: h+ Y
                try {, G: R5 l8 n0 C8 G9 m
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. h9 [' x; L# X. H0 v' H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% p% F, T, Z# Z
                        
  @( U- f1 x4 y% a. \9 r) X+ l                        actionGroup.createActionForEach$message(list, agentSel);
. Q/ T$ H% }* W" X) H                        actionGroup.createActionTo$message(this, swarmSel);
' n8 c# n8 r) F, J8 G$ F                        schedule.at$createAction(0, actionGroup);$ |/ K9 }4 G' _  y/ R( N+ h
                        schedule.at$createAction(1, actionGroup);
/ D6 x: z$ m, }$ f" D6 h                        schedule.at$createAction(2, actionGroup);) ]6 g1 X  }  ?
' ^0 F, N% W3 h+ a$ h
                } catch (Exception e) {% q: P. W  d  a- {! A, h: G
                        e.printStackTrace(System.err);  ]  S) {# y" ~; U- {
                        //System.out.println(e);% g0 r; ]7 y9 w0 y2 i2 h0 ?
                        System.exit(1);
; n' A6 ~  @) D1 b: ^& g                }
& u! C+ s5 k5 X6 X4 L+ R. X$ B& R1 Q1 e. r0 k( ?

8 F1 ?0 D6 t* M$ @. N        }
1 e% n1 e; |' W3 C5 {: ^% U( t* f" }1 \2 T0 ~
        private void swarmSetp() {. g0 O# {( S) k" y  i7 X
                list.addLast(new Agent(Id));
5 w& _# C6 n+ ]# B4 ?: h                Id++;. j9 y! `. x" D7 p
        }3 n9 X! N! g; a( `! _6 U

8 b# {+ [$ ]" W6 A( i2 P# G        public Activity activateIn(Swarm context) {, q/ `# O6 e! }6 K0 E8 N: ]
                super.activateIn(context);
2 O) \1 B" B3 j% i0 v6 P                schedule.activateIn(this);) k1 r* I" ~- l! p
                return getActivity();, Z0 o. i. n# T7 e: Q) ]) l
        }
  k! Q4 f9 w5 f' B/ u. F/ {! S  K  U9 N
        public static void main(String[] args) {; k, Z0 n9 |0 g: D7 e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: q& q$ h; i& ~$ C& k5 O5 S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, x2 [- u4 m) m! Y1 ?
                swarms.buildObjects();: g  z0 {" z: }+ _6 d4 }
                swarms.buildActions();
, }9 l. p+ }/ t6 z* [, H+ B                swarms.activateIn(null).run();
% N# Z. l; [2 ^7 c" a        }
3 E- l4 G) A6 n. ]' m6 h. i8 u/ F2 A5 F7 V8 h2 _
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-17 20:22 , Processed in 0.018384 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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