设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9799|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 ?9 I6 G% }3 x7 ?5 N( V
$ ^, }1 R, R2 ]  y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& h1 p; Y, n) e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 k5 m( K1 D- f9 x
swarm.SignatureNotFoundException
9 p1 O6 b1 R: E  E% z4 v( ~        at swarm.Selector.<init>(Selector.java:76)
# Z5 c# U' P: m$ r; H' r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 x1 M' ^* B# }9 w: a6 U; f0 m        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; E* @' s# i1 J: H. Z0 ?! q. }0 `6 I0 V! q7 M
9 K3 c; C3 k! O$ D& p
import swarm.objectbase.SwarmImpl;
, y% [  k; b& C5 O. |import swarm.objectbase.Swarm;
$ n; N6 ]  O, ?/ pimport swarm.activity.ScheduleImpl;: [& t  P: H4 V
import swarm.activity.Activity;4 O3 J5 D5 M" u8 t9 u0 K: ~! D6 M
import swarm.activity.ActionGroupImpl;; f; n0 h: s; o# T! w: J  v
import swarm.collections.ListImpl;% d2 F8 y: U( R- s9 G0 r
import swarm.defobj.Zone; & r+ r+ e' {  N3 ]
import swarm.Globals;5 C0 E  I& Y" _4 _" n- i
import swarm.Selector;0 V# E5 B. o, D+ @' @. c/ T
import swarm.activity.ActionGroup; " E& z9 O4 j0 T4 P2 I; Y7 |
class Agent {8 y: U% W0 y1 N
        char id;
- u  }, ~" ~# \3 G4 _
) s4 @9 G$ ~, l6 V$ ?        Agent(char id) {3 h1 g+ {: y" ~9 _/ c
                this.id = id;
, r8 ?" L6 M) a, c' R        }
, E1 {- e4 y0 N: ]5 H! L5 @6 _, |
        public void agentStep() {
2 F! ~7 B( I/ A. M' |                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ K% `3 f6 J2 p1 ~4 N! Q        }
/ F6 G/ e3 `, i}4 a, W8 G3 \8 d) ~* D% d% f

  s( [' a# R# z# r4 `( Jpublic class ActionGroupDemo extends SwarmImpl {& F1 L$ X! Q( r7 @
        ScheduleImpl schedule;
6 J/ Q1 D, A3 w0 O* ~, `, ?        ActionGroupImpl actionGroup;& i4 l1 x9 ?0 }8 a" I8 T8 ^
        ListImpl list;* y% Y" i/ k+ W
        char Id = 'a';" s) i; j) J6 p, x# F5 T
5 a6 r8 \8 K5 K% u$ P: N
        ActionGroupDemo(Zone aZone) {
) G. F. \/ \3 Q% c3 A1 Y# L" f                super(aZone);
' @# T- V# i$ U, N                list = new ListImpl(aZone);
. S2 x7 q: S$ K. ^4 K                swarmSetp();
; u$ [& X! q9 H0 o                actionGroup = new ActionGroupImpl(aZone);0 z: ?8 i2 Z1 |* D; Z( a7 J
                schedule = new ScheduleImpl(aZone);
$ x9 f3 K2 S+ Q/ |( i                try {$ Q1 q1 C& f; O7 a6 r
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ @8 [" G7 N- V7 e/ [5 i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ D4 F% M7 a, R+ i2 V                        
$ h% o& o$ ], f                        actionGroup.createActionForEach$message(list, agentSel);
6 ?5 [, i0 q3 \                        actionGroup.createActionTo$message(this, swarmSel);/ p" E, C; A9 [# q% P) B% L  Q
                        schedule.at$createAction(0, actionGroup);
- Q$ W: m& c. D, g4 ^. X                        schedule.at$createAction(1, actionGroup);
! l$ L3 `  A6 L* D& s1 A  }                        schedule.at$createAction(2, actionGroup);% y: x. i1 v& m7 Y

4 V+ B! n# b$ a: k6 w+ l                } catch (Exception e) {2 h; x2 v; C/ I/ H, T. H: B+ v
                        e.printStackTrace(System.err);  N7 P) j% U6 v1 F/ j" R9 {
                        //System.out.println(e);
+ t5 C' p; k+ p9 [% R+ O; N2 g                        System.exit(1);
/ ?4 Q6 D/ I" s7 p7 g  X                }+ j# g- {0 q0 W: |$ ^* e  P

) n- `! s1 z% E! m4 h+ x6 k& H1 l
        }
4 A2 F7 l( l6 O5 G( u
; }) z/ e5 L* S# v: n        private void swarmSetp() {/ I2 X7 n5 d8 I9 A& |2 z
                list.addLast(new Agent(Id));: h' I; I2 e- y8 g8 b
                Id++;
( P5 T4 v2 N& A% k2 P3 r        }
# `( Z$ @: N% E0 a9 r6 \$ I8 n5 h9 M0 N0 L" P
        public Activity activateIn(Swarm context) {; p2 K2 s/ [8 Z1 D/ U
                super.activateIn(context);$ {9 C( @0 p$ v- V: y! L
                schedule.activateIn(this);( r4 G% a) i  \1 y* D
                return getActivity();. e7 s3 D  I- L2 [0 @  y% q
        }
! a. J, F! X8 G1 A* T2 l4 B
3 t" y8 ~/ u" j7 \9 `1 X; p        public static void main(String[] args) {- N' X- e$ v0 M- V! ?* s  a) E
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  l2 o1 {: N, B/ H7 W                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 Q2 S( k: [: a  l0 J                swarms.buildObjects();
: j. {: k9 V/ V                swarms.buildActions();6 |( E& Z* v2 W6 B* t( k
                swarms.activateIn(null).run();! I& C5 ]; a$ t9 ^7 ~/ j
        }
! A* V" Q5 j, q& W' Q5 k3 D: A" H7 w" R0 o" Z/ R5 I
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-23 09:33 , Processed in 0.020404 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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