设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8323|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' N: c. x6 H  r
5 x: k8 i! R3 F% @5 x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% z% J* V. R/ c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( ?, g+ U: S# ~( g, \* d) ~
swarm.SignatureNotFoundException  I" _) V, L6 u' _# w2 ?8 \& ?* s
        at swarm.Selector.<init>(Selector.java:76)" {8 {- f/ b, s0 k% k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! s+ Q# ], u; v& r* G7 o7 V
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( p5 c+ y5 M0 m7 c* z$ d

! u) i' c# ^6 G9 k  R2 V2 T1 _, n+ A' X1 y/ s: N
import swarm.objectbase.SwarmImpl;
3 m6 L1 }" n0 R, mimport swarm.objectbase.Swarm;" c1 `4 f% Q8 p% P8 D
import swarm.activity.ScheduleImpl;
2 L7 O' c' r7 Y7 ~1 ^' e* u! Fimport swarm.activity.Activity;
8 o6 C" V8 H, bimport swarm.activity.ActionGroupImpl;
, o4 ]* V6 f; \0 Q% G0 Yimport swarm.collections.ListImpl;
1 o( J; E0 W- o4 p! r8 l! U. G5 K' gimport swarm.defobj.Zone; ( M( Q2 m- r. k
import swarm.Globals;
% P5 k$ D0 P# T) B3 V+ rimport swarm.Selector;2 L9 K& w( p) W7 \2 @+ ?+ T3 r2 G$ W
import swarm.activity.ActionGroup;
4 a: S9 D6 d2 f! \( h/ jclass Agent {! J( R1 X& ]& S* [( D. }) Z  L6 p  `
        char id;
2 p- x, }$ y- }& K6 Y( M. e
" d+ M2 A/ _% k        Agent(char id) {  G& }- t1 R2 {( m. k. I
                this.id = id;- v3 v, m) `7 d/ B9 P* J$ Q
        }
  t/ W  |, J+ u) |$ ]9 [+ q- K- s  O# A% h8 l
        public void agentStep() {1 N6 I7 N% O) P9 I. j: q2 Q/ ~
                System.out.println(id + ":" + Globals.env.getCurrentTime());$ |- H) w* T# x3 v) c1 ]7 C  \$ ?
        }. c0 N* t5 b8 M# K: ~3 i
}+ V, Y& b  H& d- t0 O

* G% }3 |, r  ]' j1 l3 x) `public class ActionGroupDemo extends SwarmImpl {! j8 D4 X7 C4 i
        ScheduleImpl schedule;
/ b% {5 G6 |3 A9 t        ActionGroupImpl actionGroup;9 ?$ s) k, V/ U0 w; O9 R
        ListImpl list;
( G* _( p6 t- Z. }9 s        char Id = 'a';; A. Y$ t. U7 ?

' X( M9 w& E' F6 \& u6 ~+ y        ActionGroupDemo(Zone aZone) {2 I0 C$ k3 \. U" @; a* N
                super(aZone);
: X; V: E: k6 J2 o8 y                list = new ListImpl(aZone);2 k1 I, n" g0 c" t" @1 k: s' ]
                swarmSetp();5 j6 p- X; x$ ]) T8 R* X
                actionGroup = new ActionGroupImpl(aZone);+ E9 K) x4 x' \
                schedule = new ScheduleImpl(aZone);
; g& E! s" j/ i8 J; i- l% b+ S# H                try {
8 |0 h: b( r0 A                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 N8 p9 x7 t2 \7 F  j4 s
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 }4 k5 V4 U( n; i& m
                        
: J5 W! s* H8 L- L1 G# B                        actionGroup.createActionForEach$message(list, agentSel);
& E8 ~5 ~& ?* f1 O4 w4 X                        actionGroup.createActionTo$message(this, swarmSel);8 z% u; E: H8 w/ }0 x/ G2 \
                        schedule.at$createAction(0, actionGroup);
& ~1 m: X' s$ _! @# S. B- ]2 d) P                        schedule.at$createAction(1, actionGroup);
2 H" b. Y' Y. x8 j: ~3 k& [3 m                        schedule.at$createAction(2, actionGroup);
- J  s- t5 e- o/ W5 {5 P- e# _- W* ]; t/ |" w3 K
                } catch (Exception e) {
- \! Q" T! R: Y# F7 r; u                        e.printStackTrace(System.err);
" y/ U8 Y/ i2 ]" ~                        //System.out.println(e);
) B* X7 F8 l/ k( e8 L7 ^+ W: t' q$ ^2 M                        System.exit(1);: x3 c2 y$ O$ p1 }) }/ ~
                }
8 y2 V2 s. W8 R0 r4 s0 m/ i* t6 H  O$ T; r! Q3 y, b, g
6 i4 h  J/ L) Z$ e7 L9 [6 m
        }2 p/ `, a- f- i$ }8 W
$ A) ^2 ~/ f! @* _
        private void swarmSetp() {5 `* H* t) C4 ~( u& L$ U( w
                list.addLast(new Agent(Id));
4 S2 D4 H' h& j                Id++;& D7 ]( @% h" E8 {) T7 j. E% W
        }
. `9 L0 }% T' ]; O. n7 I9 K$ D* {6 M2 |4 I0 H
        public Activity activateIn(Swarm context) {
8 ]( T5 K% z$ f- x                super.activateIn(context);
' j) z# x& B* Q  C! o& Z$ g. n' S                schedule.activateIn(this);
, j; N3 E+ o- t2 L1 a  I                return getActivity();; B4 E4 N" ]1 F# u' d, _; P
        }
9 L& h/ m$ V, A/ `, R' D
+ b+ O# R# @6 O! I        public static void main(String[] args) {# k7 r3 Y+ h9 v  b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( r* V9 w8 c4 E1 U5 O$ u9 ]
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 ?1 h; o( A& c' M) N3 k5 [& T# ?
                swarms.buildObjects();/ [2 p1 f6 ^* s, v4 d) U, ?# y1 ^
                swarms.buildActions();
4 B* G$ t4 Z% a4 n' D( H: W                swarms.activateIn(null).run();( u& g; j8 G# x3 @3 t9 O
        }
2 o1 ], t4 X; ]: Z# t6 ]& O
* t5 R. @; p5 Y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-7 23:23 , Processed in 0.017020 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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