设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7991|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 ^1 f5 q9 w- n, t4 w# K( [5 W8 D6 \& @  q! m" s: ]/ U; n# C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ U! x+ b5 b7 |; B& }0 I& Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 H" B- J& d) i8 o$ Iswarm.SignatureNotFoundException' |1 r$ f% _: N! q  q5 [
        at swarm.Selector.<init>(Selector.java:76)
/ `7 @( B0 G% F; u5 B8 `. G        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 C1 K$ {8 {$ V% Q% d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* `% \9 d6 G1 ]/ d. ~" k
: X9 G+ W+ j; v$ V; `: `5 F# j2 Q# @) O' [4 t! V
import swarm.objectbase.SwarmImpl;% a  i# v& W* ~* m* C; G
import swarm.objectbase.Swarm;
# `+ k6 d! y( f% D. Q$ B# Rimport swarm.activity.ScheduleImpl;! r" T* U9 ]  Q7 I( P, y$ W8 }
import swarm.activity.Activity;
/ Q* H0 Y% L) K7 M# C1 ?import swarm.activity.ActionGroupImpl;, y9 D+ V- V: I8 z' i7 c$ W
import swarm.collections.ListImpl;0 _) m) c" _0 Y" |0 R7 ?
import swarm.defobj.Zone; . S/ P7 I7 W5 k4 F4 G8 N
import swarm.Globals;% V+ a! |. O- d! h: j  a& K
import swarm.Selector;0 t( h% C% `$ j- z
import swarm.activity.ActionGroup; : a6 ~1 O" I/ f5 g
class Agent {; G( p" C; u% u/ X0 O3 D+ g
        char id;9 R4 N, h0 m1 k; W/ F

. b" O4 O9 |; p, ]1 Q) U        Agent(char id) {3 x8 b( W' w( I# @
                this.id = id;
, ^( m$ R0 u- w) X        }9 v# i5 \1 N' x# I! v9 w1 V
* D# ^* {9 c6 S8 s/ G) g# p
        public void agentStep() {' f8 K9 ~  x5 o& Z
                System.out.println(id + ":" + Globals.env.getCurrentTime());& i, a5 ^% B" Z$ l4 Q! j# x/ B
        }* m' G' h" C1 o% X( L' n
}8 m5 A5 c& p2 {0 f9 a% h" E
' z  @: s* ]' C+ D
public class ActionGroupDemo extends SwarmImpl {8 U0 l) ~% b" c, f7 X' W
        ScheduleImpl schedule;. m7 o; ^1 k: o& ?5 c" @5 r
        ActionGroupImpl actionGroup;* g& }/ n" y1 T7 N7 c0 L' N
        ListImpl list;! Y" h' }% V; l& C8 x" ~6 x  K
        char Id = 'a';
$ U9 D+ U! B7 Y# P# L& T
4 H0 ^- N. g, Y        ActionGroupDemo(Zone aZone) {
2 D4 V- s( G0 R1 _                super(aZone);
, \2 X$ c+ D; S                list = new ListImpl(aZone);
; x+ \$ _( k! J) e                swarmSetp();
9 @/ L( k' i& a  E                actionGroup = new ActionGroupImpl(aZone);
4 V( v% p6 S& j# U                schedule = new ScheduleImpl(aZone);# v" A+ p$ t3 x7 Y
                try {* h- y  B8 F- _+ k0 \& d
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. f1 l, T9 ?# P                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 }& m; @7 j7 X$ X8 F+ Q1 T                        
# b& L! T0 u2 \6 V                        actionGroup.createActionForEach$message(list, agentSel);
& ^7 ~9 Q4 \, [! S                        actionGroup.createActionTo$message(this, swarmSel);6 `$ Q" X: I; d( }# }) `( E
                        schedule.at$createAction(0, actionGroup);
/ E/ k) F4 Q2 K                        schedule.at$createAction(1, actionGroup);
" u0 y8 V2 s6 t& r) T                        schedule.at$createAction(2, actionGroup);
( b5 n& o2 i9 v5 G" n" T5 ^/ m* T; K: C4 E0 q/ h$ Q
                } catch (Exception e) {
* k( l" g" l+ G                        e.printStackTrace(System.err);( _1 C7 J% i8 C: r5 k7 O( e
                        //System.out.println(e);
2 J! s5 F+ i+ y                        System.exit(1);  N3 s3 j3 y5 p$ K: Y% ^- Q, S
                }3 T& Y8 O, J4 `5 d+ K

- m; C: K; U* Y3 `! P/ W3 G3 }# `: w2 n
        }
6 J  E: ?' w# L. j4 Y3 l
0 b- ]3 x1 V5 v) s9 ^        private void swarmSetp() {2 h4 h, y4 R8 H5 S
                list.addLast(new Agent(Id));  S4 X2 A& v# j" x. W! S3 C( p
                Id++;
! A. X8 k8 c; ?- l0 i        }; k" i& W- x7 Y/ A, m

$ K" x" j+ x9 O        public Activity activateIn(Swarm context) {
6 u6 `  V; M3 a  Z" D5 C7 t0 P                super.activateIn(context);  P& w/ C/ v/ M* M! S
                schedule.activateIn(this);
) H+ M$ C* c  I) q6 j& E/ V( z; X                return getActivity();
& H4 N3 H8 [: F5 k3 k& O        }
& P6 r" z% E. d. C7 C# ?/ N2 b* K8 x9 o. j2 w# t! H
        public static void main(String[] args) {& j1 `* a1 p" `! P6 E; w- O2 V, X
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& X1 `+ |- o6 e, P( q# ~
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& u3 j" f% r$ C6 A0 V- M9 i
                swarms.buildObjects();, M3 H* z9 l& C
                swarms.buildActions();& H9 k( b% i( v* u( q
                swarms.activateIn(null).run();& F  W4 C1 ?; v4 @# H  c
        }
$ m' d! t9 n$ d6 A
$ h. _7 H. e+ Y2 R5 ]$ \2 g}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-26 05:00 , Processed in 0.028677 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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