设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9194|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - ~+ j2 ?: G3 X/ a3 @. J7 Q
7 Z; G% ~* J9 p2 v; e1 x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 f5 G( q- \8 _. `& P( H* `% J3 }0 N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! I3 o' j  d7 w! o& c' {& s
swarm.SignatureNotFoundException" L( P& v% b1 C
        at swarm.Selector.<init>(Selector.java:76)
, J6 Q' H5 r6 T+ \, g        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  E, A) G' H$ g. ~+ q( O" F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) G+ `7 W3 G. N! A3 h/ G$ H/ ^7 J/ g% Z  C4 s1 ^" K' o* [0 r, |
7 G* e& H; \2 a' M
import swarm.objectbase.SwarmImpl;
8 C1 V0 L+ @8 C+ }" Mimport swarm.objectbase.Swarm;
' ~2 ?5 ]: n3 D( Fimport swarm.activity.ScheduleImpl;( ^* L' U( C+ \
import swarm.activity.Activity;
! Q% H9 T9 E+ e; X% Uimport swarm.activity.ActionGroupImpl;
+ Z! u9 ]- x' [8 h  A6 `import swarm.collections.ListImpl;( M1 K! s5 ~8 q1 N1 y9 Z
import swarm.defobj.Zone;
; Y1 ~0 ~- V- D0 n: H* U5 ximport swarm.Globals;9 r  w! B4 B7 b
import swarm.Selector;$ o4 L3 _1 p; x  ^" l
import swarm.activity.ActionGroup;
+ m- z) k6 z4 Y$ d0 Iclass Agent {. Q6 k4 n8 V" X9 z
        char id;. k; W2 f% I$ M$ |8 h; a
, F. }1 m  j& G7 L* r
        Agent(char id) {
  |, o& D7 S. v7 d0 e                this.id = id;
7 v5 M; C& l4 e6 a        }; D0 \( j1 p2 C* s
$ e. @) h# E- o
        public void agentStep() {/ Y( r# _3 q9 z: M. r! ]) ~, G
                System.out.println(id + ":" + Globals.env.getCurrentTime());2 t3 b+ L) r5 t0 @- ~5 w; i) }+ P
        }
0 u$ G  P& q! l- T" L+ K; O, |}1 f" S2 L9 F% M, v; R6 t" n& i6 t7 S
2 W* R$ P3 q* y+ _
public class ActionGroupDemo extends SwarmImpl {3 H: l4 A' U7 i3 h+ R1 S/ \8 [$ j, B2 n
        ScheduleImpl schedule;
; a+ \( E) T5 a( k, t! z* c        ActionGroupImpl actionGroup;
+ @9 o0 f7 y( @( M        ListImpl list;
( T1 M9 v: a/ d) n6 Q$ c) `" o+ F, s        char Id = 'a';6 x$ M5 Q+ s. @+ {( G
# N+ T! b+ n( i0 E
        ActionGroupDemo(Zone aZone) {
' K( j. k+ t* N' N/ V                super(aZone);; N: A# a/ W5 r% U8 Z* b" w
                list = new ListImpl(aZone);
9 n% ]; F' x" E# g                swarmSetp();
7 O7 {2 v8 r$ j4 H                actionGroup = new ActionGroupImpl(aZone);
; O- P* T/ ^! z; A+ S4 D: a4 ~+ E                schedule = new ScheduleImpl(aZone);/ H# ^" \4 X2 r! u0 ?
                try {* X; P% p) I5 {, ?+ z6 U
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 Z4 Y* }' ]1 C; M                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 k' ?0 P! U" g9 f  V; x& b, T- k                        
/ Q8 d# f- M5 W' z% C# _; d' F0 g                        actionGroup.createActionForEach$message(list, agentSel);8 G0 a* ~( n! Y4 H3 z
                        actionGroup.createActionTo$message(this, swarmSel);# ]' [7 `1 k6 P) J- d0 o
                        schedule.at$createAction(0, actionGroup);
0 P' O" e% {: b7 F& o" {                        schedule.at$createAction(1, actionGroup);
' `% Y; w) P1 |9 E, t, a                        schedule.at$createAction(2, actionGroup);
! T' w! v3 y, o+ o- v# v: ^7 P2 }6 y) r
                } catch (Exception e) {/ M1 q. D" @/ |9 ?) z. e% V, A
                        e.printStackTrace(System.err);2 W" I6 F* x, t- k' r' Y3 D: R. ]
                        //System.out.println(e);
* P& M9 w" {- M6 V1 _                        System.exit(1);
) m; P8 S4 ]: X- [! E  |( c! I                }" ]: ]/ I7 Z! ?& e

. Q- k4 `8 z& C4 K/ E$ e8 L" [+ `1 X6 _" D5 L! {# _, Q+ x+ K+ V
        }
: e& E0 F2 `* k2 c/ j  [. S  ^1 Y  f' Q
        private void swarmSetp() {( R8 U( ?$ B. C* q  m9 d9 \' a
                list.addLast(new Agent(Id));
+ t- n+ f+ C2 E. m1 ~                Id++;1 t. K) B" S. I# v. s  o
        }
. C- U& Z9 |" x/ t0 w8 Z  |1 t. b. @3 C2 z2 {- I7 Z
        public Activity activateIn(Swarm context) {+ P3 ]+ w  w* k( J9 M
                super.activateIn(context);
# k6 e9 i( L1 H% i2 H                schedule.activateIn(this);
5 Y, b* H4 o! g7 H                return getActivity();
8 T, e% p! d% H) u- _' Y        }
- J; k6 B' S" p' t0 X# Q2 J: W/ e1 h9 s% B: q
        public static void main(String[] args) {; @5 g9 p' C3 [3 k; V5 `; H
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: E! k/ {- w% C" g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" V: ?! f4 n5 q6 B1 j  ]% X                swarms.buildObjects();  k# C" M4 s% O* `+ \) F
                swarms.buildActions();% N$ Y2 l1 |( z
                swarms.activateIn(null).run();8 ~* U8 A; o5 O6 R
        }8 l; n9 `7 `6 S( k! ?- b) g" `

) N2 A- z6 `- A}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-4 03:15 , Processed in 0.016653 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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