设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5945|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- k$ P9 }2 M, {: T" N3 v/ M5 D% H8 P6 V7 Z2 d9 ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 E5 V& U" r* W7 I6 x  T" \0 Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ z8 y4 M4 Q5 E  ^) O
swarm.SignatureNotFoundException
" L2 I. L& w- D6 d        at swarm.Selector.<init>(Selector.java:76)% e# g" X! w2 V
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 |9 P4 \) M* z% E; V% Q1 ?( @' G        at ActionGroupDemo.main(ActionGroupDemo.java:67)# F  l6 R/ n  g4 }. I3 ^! w

3 n: y1 k/ }- s7 d
9 z) j( b2 G. }8 c# u" Q/ nimport swarm.objectbase.SwarmImpl;
+ M* M8 u. K! h+ t$ k6 c5 wimport swarm.objectbase.Swarm;
5 q8 }8 ]" t4 ^- h% Iimport swarm.activity.ScheduleImpl;
5 F1 C9 G9 U! _2 B( d: h: I* q1 R; Bimport swarm.activity.Activity;
% u, p6 E) [, H4 S: @import swarm.activity.ActionGroupImpl;$ g+ N% U8 I1 c. K$ @) U
import swarm.collections.ListImpl;
1 L. h" e. o2 U8 pimport swarm.defobj.Zone; - C3 x; ~0 m) I# Z# F* D: i1 H
import swarm.Globals;
% e: K! J2 [& M% O) h$ J& }, Fimport swarm.Selector;6 S: b0 e) F, s: T$ u
import swarm.activity.ActionGroup; : h# e! `) |% n! J  b0 }- ]
class Agent {( X% c  G7 R. {: n
        char id;
) o$ `7 Q" V7 e% k8 F" K
/ I" c3 P0 |( }5 b2 v        Agent(char id) {8 z0 H  n. S; B# s3 u7 }% U* i
                this.id = id;# X3 y$ I0 i- l; v
        }
: V5 W  o4 V. n% E, j4 v5 V& j( }3 }) @8 a' J$ F; [- ~
        public void agentStep() {8 o* v) O6 K( {: H3 y5 t. X2 v/ a
                System.out.println(id + ":" + Globals.env.getCurrentTime());
" K5 `6 c) j  c; q! v        }2 m9 E& L$ w, l( j1 q' G
}
+ e# i! M4 r4 \; G
% l1 B- _* `. u# j. g# upublic class ActionGroupDemo extends SwarmImpl {; u. j" z$ [5 O7 ]
        ScheduleImpl schedule;, O& b. E5 T' N4 G
        ActionGroupImpl actionGroup;7 R0 I$ l- Y# q' n
        ListImpl list;9 h7 t9 }4 Z- P0 Q; w
        char Id = 'a';
5 o+ _" K! [" ~, U" Z; y8 j1 J$ U% |) F8 p3 \
        ActionGroupDemo(Zone aZone) {
; `& `& B% T* @9 |3 {                super(aZone);% |9 e; u0 b, P8 Z( {
                list = new ListImpl(aZone);
6 i* s1 H# S  n8 C/ i9 H: ?8 G/ _                swarmSetp();: z$ Q1 R9 A- O2 `
                actionGroup = new ActionGroupImpl(aZone);
3 ~- E, l9 K) [( k                schedule = new ScheduleImpl(aZone);
- W' q% \* f; w+ d! k                try {9 x+ b3 W  F$ a" }( z" g; j% d
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; d- X( o# U! r: v  T% n" ^% G; W: j! z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 _) |$ w" A. ^1 e  t
                        
+ B% [: \- u; D1 Z6 n2 B* F                        actionGroup.createActionForEach$message(list, agentSel);  n; K9 h' {5 G  p$ m" Z
                        actionGroup.createActionTo$message(this, swarmSel);
7 P2 R, n/ b0 h; q                        schedule.at$createAction(0, actionGroup);
4 H) `' |; F( z- }( e" R                        schedule.at$createAction(1, actionGroup);
3 z6 f% |; r& i                        schedule.at$createAction(2, actionGroup);
. l0 V$ x$ s  K$ M  |/ k! a: X2 V, n! j$ |
                } catch (Exception e) {  ^4 f! w( {: G. Z3 b  E5 [
                        e.printStackTrace(System.err);
0 I5 ?* g* k# F4 J1 F' N                        //System.out.println(e);: r( L6 j5 v3 a5 x: y4 y
                        System.exit(1);
: K2 j/ a8 F% i4 F0 U: z                }
2 }; N7 ^0 U3 _* s0 O. D0 V5 D& T9 k9 v
% z3 H5 r& Q! N
        }) U1 l$ z, W8 U! Z) q: ?- S  t
2 p- ]3 `, O1 V6 N( A8 n
        private void swarmSetp() {
9 W5 A7 s) E! R- \* \8 F" b                list.addLast(new Agent(Id));
7 |) h$ C5 p. E                Id++;( B6 i$ p9 K7 L, P! R8 ~  F) |; b
        }8 K3 l. w* }2 i- E5 W/ Q
/ H' c8 s* ]& |+ Z# a
        public Activity activateIn(Swarm context) {3 k8 c  K  J4 \0 U) f
                super.activateIn(context);6 W" M5 u$ C' p& b% n6 V2 S
                schedule.activateIn(this);) `7 y& x& L) i% g& ^
                return getActivity();
- R4 I; f1 C0 z/ X1 ^        }) Y3 k+ P3 Z: K) c$ c; o, }3 f/ R

* v4 A, C3 N6 N) W' c# b* Q% ]4 l        public static void main(String[] args) {
. F4 Z+ V3 O8 ^/ F5 k. L                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ z# U; h# e  f, v
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& ~- ~3 ?' p+ l1 R3 P) u! ?+ l
                swarms.buildObjects();
- ]5 ^% v& p1 H5 @  q7 \  w                swarms.buildActions();9 R, e; `) v0 ?4 j5 A* l# [) Z
                swarms.activateIn(null).run();9 `/ J  `' u/ a5 `4 d
        }
5 n; M4 W8 X+ H3 R- h- A0 Q" h. P& S9 p* G( I
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-11 11:48 , Processed in 0.020349 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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