设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6390|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; |# ~6 h) P7 Q! U# T8 y9 U8 K$ ^: o  P  }; o% N1 z/ k! Y7 A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# \# ]: Y+ V$ x1 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 S" S: p1 ]7 |/ C8 m! p
swarm.SignatureNotFoundException
: o# H3 \, {/ x! U9 i$ z        at swarm.Selector.<init>(Selector.java:76)" p3 _+ f3 n+ ^$ o* _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 O; w8 X! [8 |
        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ u' I" |: i* z
* P6 b) v" B  L: t% I- u
" r! K3 ]# h: N" K$ t2 @4 J* D/ Y
import swarm.objectbase.SwarmImpl;
& d/ ^  G2 r; F; [  Mimport swarm.objectbase.Swarm;! @0 y% u! H* ^' c3 W: B
import swarm.activity.ScheduleImpl;
- a2 Z7 }4 V0 [import swarm.activity.Activity;2 o4 j/ ^/ M1 d9 S+ M  v
import swarm.activity.ActionGroupImpl;& g1 m! |( k. E1 u& Z+ }
import swarm.collections.ListImpl;6 g6 ~: b& W' i9 V) I3 C& z
import swarm.defobj.Zone;
3 I0 l0 x; _: y0 u3 ~0 Oimport swarm.Globals;
4 I* Y1 y5 A5 `) s0 K% l: ^; H- G! Bimport swarm.Selector;! g2 q. X- l1 E  P
import swarm.activity.ActionGroup; ' I: N8 g5 U, B! r5 j
class Agent {
# ~/ m0 Q/ B4 q5 e) L        char id;
2 W, R' V8 G" T6 `7 _
! g0 V1 Y( Y( `9 R( H7 r& b/ v        Agent(char id) {
! ^  r& h) \3 w. `                this.id = id;
( A5 y% T% [2 i( H6 y: R        }
# t2 ^2 @2 ], Z4 u- d/ [: @2 V' [& L3 D3 e+ [! f! `  U( B
        public void agentStep() {$ I% U+ \  Z& j" m
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 P  L# W- A* A/ ?# U1 P! J# Y        }
+ Q! a; q' V! X) C5 l& g* P$ H! F}
# u- P9 |. I$ z( `/ D
1 J6 c) \( v( i9 e4 ]; W* Xpublic class ActionGroupDemo extends SwarmImpl {
* y, I1 d1 q& |: p% ~% O" y) H        ScheduleImpl schedule;
7 s* W( g4 |7 k8 V0 c) p4 I$ s        ActionGroupImpl actionGroup;' g2 W  B' x3 A: y4 @) O+ J
        ListImpl list;
. H! O6 U! o: `  U1 ~        char Id = 'a';7 C3 d& H. a3 ^

$ L2 [' [0 l- ]" N. H        ActionGroupDemo(Zone aZone) {: l7 O1 Z" K! h. o- U+ }0 f
                super(aZone);
3 M0 ?0 i1 {; j                list = new ListImpl(aZone);! t. [1 T( Z0 ?$ T& L$ C, y8 a$ O
                swarmSetp();7 P4 f  N3 N5 L
                actionGroup = new ActionGroupImpl(aZone);% C# B4 z: q7 L- ^' O/ _8 u
                schedule = new ScheduleImpl(aZone);
: q/ l1 |* U7 n8 b7 r; Y                try {
$ N+ L! X0 U, ?1 y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 V$ h1 F8 l$ n* t- Y& q! j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# n6 R; g5 N8 o# X  T
                        % q, I* L; D  k0 E' K9 B) d# `9 P/ u
                        actionGroup.createActionForEach$message(list, agentSel);
5 [, `  E( f: b8 C, j) M                        actionGroup.createActionTo$message(this, swarmSel);# r$ q* q( u0 x3 m9 z2 C
                        schedule.at$createAction(0, actionGroup);
5 K" ^+ s" K5 X- f" K. q% a, v                        schedule.at$createAction(1, actionGroup);  @" ^3 ?  P3 Z
                        schedule.at$createAction(2, actionGroup);8 e$ l, q% N) v* b0 g+ i
& `# F- T$ g$ Q$ \
                } catch (Exception e) {
+ ~$ E# X, b4 r! [+ L                        e.printStackTrace(System.err);' C; Z% C/ s2 a
                        //System.out.println(e);
8 I5 o* L5 _7 J0 [8 F+ Q                        System.exit(1);
1 b) g. _# |( J; ~( B                }- r7 P2 U6 m! b, q) Y4 m" {) I
: Z8 I! u% s$ f( `1 k
2 M- ?* k( p  E. @1 r! r; K1 f
        }
( N" i# t+ X+ O- Q( D5 P  e0 P0 F0 `( B. r. w  w; Q& {
        private void swarmSetp() {( ^. t3 l" g4 W
                list.addLast(new Agent(Id));
) R* p9 I8 o" x8 W' ^+ Y                Id++;5 `7 O. i) i) Y. @6 k) u
        }
8 W# ?- k+ a2 q
: b& G# t+ W# O3 y        public Activity activateIn(Swarm context) {
/ V/ S& C* i1 m8 _) v8 E                super.activateIn(context);
3 E" l0 o4 H3 X# O& c! X% `                schedule.activateIn(this);
' s8 b! @! {/ V( T                return getActivity();
& [' N( F. g, F! u        }; [% C; e2 m& W. L: p# {( Q

  l" H9 C7 t7 v  B' g6 S4 v" ]        public static void main(String[] args) {
7 k: k* a/ U$ z' Z, K1 \                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- }) c. y" I  H. C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 D' W: _+ b  ~8 o  T! z                swarms.buildObjects();+ ~% `3 w, x, n+ {# x
                swarms.buildActions();* N/ }; w8 a0 R5 G" \
                swarms.activateIn(null).run();
1 S9 M! m: ]; C+ y/ O4 x3 x        }
& f6 Q$ j& l$ U  \6 _( D0 m0 O/ e0 _
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-27 08:05 , Processed in 0.017269 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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