设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6640|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' u3 |6 X$ o" N" u: W7 z
5 o, v3 S; I9 c# b# }本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, \1 }- I8 w+ e( [4 I& ?+ ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ @5 I1 H( X: X. G% D
swarm.SignatureNotFoundException% J9 S: |6 z6 ~% G+ L% z
        at swarm.Selector.<init>(Selector.java:76)
5 w6 @0 A) h8 }4 f, ^. B3 W$ e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 S, b4 v3 ?, S8 o  M        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# r# H. }1 w" x. y! j% l. q# U# j7 V* J

' s" M; [$ b, ]# X% e$ Eimport swarm.objectbase.SwarmImpl;) y& A" d1 v, j7 C3 o
import swarm.objectbase.Swarm;3 f" E( x, o4 c1 C( [+ W
import swarm.activity.ScheduleImpl;% C  A- k, }3 X+ Q9 G
import swarm.activity.Activity;
/ c' N; @$ H# _6 Z) Q' eimport swarm.activity.ActionGroupImpl;
' a8 m( i0 ?' h4 Yimport swarm.collections.ListImpl;/ Q7 C) P8 r" U, F
import swarm.defobj.Zone; # c3 P5 x6 E: j3 {7 u: w) Q
import swarm.Globals;0 U" h% b% j2 J2 ]0 y# e
import swarm.Selector;' t* e1 M3 b1 ~: b( Q7 ~
import swarm.activity.ActionGroup; ( C! x' {$ k6 h! W! C! Q) G  g& B; ^
class Agent {* Z: d$ \6 b/ `4 h  |. I
        char id;2 a* o- h$ a7 ^9 M. h8 }% Y0 H
' s/ K: u& V7 h. t
        Agent(char id) {2 \7 l9 o6 b3 ^8 D
                this.id = id;
: p4 h6 B* W! s7 Y" D) X* l7 P6 b2 W        }% @" i+ n. h5 p* P! s2 U3 w6 `

* _, T+ Z1 Y* x+ u1 P( T        public void agentStep() {
) u; i! s! m9 z6 D& N6 J$ A' T2 g                System.out.println(id + ":" + Globals.env.getCurrentTime());  o) i. S; L6 h, c* g7 n
        }# x8 Y/ j9 a( i/ F6 y! i
}
" r1 |7 @+ N& I! w" @6 }8 L5 P+ G% @
public class ActionGroupDemo extends SwarmImpl {7 u4 w: y* E" X: B/ A1 u+ L! Y
        ScheduleImpl schedule;& H  o6 h# b) P
        ActionGroupImpl actionGroup;
: R1 w' c  D# e! x9 B2 Y" o8 u        ListImpl list;
1 X/ N3 V( @$ Y& B4 C        char Id = 'a';% c1 W" J' i* R# j! P1 @

+ O  ^5 o/ L1 ~* F        ActionGroupDemo(Zone aZone) {7 \; P9 Z+ O. S8 h' @: p' x3 j4 ?5 U
                super(aZone);7 |9 D6 _1 K% V) n: ^
                list = new ListImpl(aZone);
; G1 r% ]5 T6 b* M# c6 `8 l                swarmSetp();* m0 D/ s- {* Z, Y) R
                actionGroup = new ActionGroupImpl(aZone);
& W: h; s; H& D/ h                schedule = new ScheduleImpl(aZone);
# ^. q3 ?  l- @& H. p0 r3 o                try {
; }5 H0 f* _) ]+ a! V                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# ^5 M, |% e7 v( g
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 ~% Z9 Z$ D# h& h: M1 @+ T! N1 J# H
                        ' ~" V8 N4 s/ n, n) d9 O% l: S
                        actionGroup.createActionForEach$message(list, agentSel);
) q4 I8 l. M" c8 v) K2 f8 n8 S+ B                        actionGroup.createActionTo$message(this, swarmSel);
- e. h' Q3 Z% [& _. b: G, ?# i0 b                        schedule.at$createAction(0, actionGroup);
. v% b+ _. V* ]7 ?* A                        schedule.at$createAction(1, actionGroup);
2 M3 e' z6 S$ R- k8 {  p                        schedule.at$createAction(2, actionGroup);' k8 g: X8 d5 _
, {+ s/ r; q- x
                } catch (Exception e) {4 ?1 g" x7 P' b
                        e.printStackTrace(System.err);
0 I5 g% n$ G* b( U% e) C: p                        //System.out.println(e);) p9 Z& W* A5 J; F7 b. G5 y
                        System.exit(1);
8 _1 f7 |  {" \& y- u8 B5 s                }
4 [; U  Y3 H) \( e8 a
$ U) i( |9 D2 @$ k5 A2 }  e
9 u. d" L9 S4 m. o" [) E        }2 s; f0 t, k8 m

. s; N( j- Z2 N+ i; n5 a, S3 `% c        private void swarmSetp() {
* L8 m1 \( V7 @& h: K+ V                list.addLast(new Agent(Id));
( @6 R  z  A; a7 |. e2 x                Id++;
# G+ n& |" E. I) K1 q        }+ V' C# S! q: A0 _+ v2 k
( Y& {- C4 ?& F* }0 @
        public Activity activateIn(Swarm context) {* A0 F$ K5 g- M2 D
                super.activateIn(context);
+ W" L9 T/ r/ D1 C1 A                schedule.activateIn(this);5 z) ]) y& h1 t1 ]% q2 y; A8 ^( S
                return getActivity();. `+ _3 u/ X  G& \  M1 I
        }' m4 `) V7 z' F, ~
: Z- J1 G4 s% u$ F4 l
        public static void main(String[] args) {
. B- {5 ?# }7 G                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 g5 L( a8 @, q' |  b$ z9 J, L                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 J2 b( r# F* P# S5 ]" }3 r7 ^
                swarms.buildObjects();
# c5 W9 d4 O8 |% c5 B7 E6 S0 J- L                swarms.buildActions();
8 Q  P# i$ n9 |" L$ N# A                swarms.activateIn(null).run();
: N5 ~: x3 e& f4 P! c5 J        }5 M  S( P1 J' ^

6 G* `9 k2 [$ X3 z( |1 A. k}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-4 04:27 , Processed in 0.013723 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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