设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5967|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- r) W$ n2 f& ~, g% q# b4 A& |4 P9 ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: @4 f& i; C; l' F5 }8 n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 s+ o! D. G8 ?7 A9 O5 L# e
swarm.SignatureNotFoundException
( ?7 D2 w9 D0 l' n        at swarm.Selector.<init>(Selector.java:76)* O4 o0 f% J' H5 s0 O2 g3 b* [. T
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 f2 n/ X9 x( G" S$ |0 c, g
        at ActionGroupDemo.main(ActionGroupDemo.java:67), a$ k/ Y  N- X# a! C# y

, i7 i8 ]- |. e6 {* `/ C" X, i3 s- t1 N
import swarm.objectbase.SwarmImpl;
. B7 @# f& g9 c) r: N2 ?import swarm.objectbase.Swarm;: `2 p* @4 O$ _2 ^; r$ g* A' `7 R
import swarm.activity.ScheduleImpl;
0 H$ K  F9 Q# d* x* P+ nimport swarm.activity.Activity;
: |( T% n1 c4 W; Wimport swarm.activity.ActionGroupImpl;
& f, A8 m7 ^: n- S1 Q+ Kimport swarm.collections.ListImpl;/ g. P( S/ x' L' H- m* ^
import swarm.defobj.Zone;
+ @: J  k8 j  y$ {/ aimport swarm.Globals;
3 q( C+ a. W1 n9 Y7 jimport swarm.Selector;
8 `% G8 Y1 u6 M# rimport swarm.activity.ActionGroup;
3 M7 D1 L* c8 ~' q* X* {class Agent {
% a" D- I% S/ f' D+ h, I        char id;
8 ?/ b; d& i- K" P+ Z
! W, z% Y! H# J! P  J- O        Agent(char id) {: m& X, r' J! W
                this.id = id;
/ r2 N/ P1 t% _* P! P, V# ^        }
: c7 C" K" V) Z9 s2 o4 H& D" Q$ `6 V& I2 k. A6 Q9 G% K
        public void agentStep() {' |/ S# P$ }0 t9 n6 F  |- V) h
                System.out.println(id + ":" + Globals.env.getCurrentTime());, I# u( D* U& b4 U- D- K: ?
        }
* d: O* S5 [; u6 w( r}. Q% f6 C+ E& Q8 K: G

! L. n/ T# Q! y" p! d1 gpublic class ActionGroupDemo extends SwarmImpl {
. J% ?9 g. K5 j1 b1 R% u( N        ScheduleImpl schedule;
+ k7 O. G& G( o        ActionGroupImpl actionGroup;4 ^/ A4 [( S. b5 h
        ListImpl list;0 J% l5 l! J" C& T
        char Id = 'a';
2 ]3 W; f/ x) F
1 V3 [1 j" Z/ n0 Q' M! P        ActionGroupDemo(Zone aZone) {3 b, Z3 q8 n( r4 [9 t" s
                super(aZone);# a7 T& n( i9 k& K9 w
                list = new ListImpl(aZone);! r- k; ~+ _. h
                swarmSetp();
3 c' y" N* x% l                actionGroup = new ActionGroupImpl(aZone);  g7 z. h- m, K1 W% E" L
                schedule = new ScheduleImpl(aZone);
- E: D6 C3 d2 T# d/ T                try {
2 p; ?$ a4 G( E# E' E' Q8 S/ k! }  g                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, V3 m/ _7 ~+ h  @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( j5 o' n+ u6 b% K) G. ~% F! e% y& ~; P
                        
$ L: k6 {0 J2 v( `: T                        actionGroup.createActionForEach$message(list, agentSel);. A8 F3 G$ b1 t3 T) r4 o' E& f
                        actionGroup.createActionTo$message(this, swarmSel);6 D' b& ]; S% P+ I! j
                        schedule.at$createAction(0, actionGroup);5 o8 I* D, q: N
                        schedule.at$createAction(1, actionGroup);
$ \9 S" I; S$ J" i                        schedule.at$createAction(2, actionGroup);
$ U# }2 {% i' H, T0 H2 [" z$ }1 ?8 J) ^7 g
                } catch (Exception e) {
' U. K* e* T& A                        e.printStackTrace(System.err);
3 u5 X9 F, A; E7 K! O! k9 F                        //System.out.println(e);8 ^7 c  x$ `8 \& g
                        System.exit(1);, N' m  k0 t: m+ V% N3 X% \
                }
; k; y. b9 Q% k+ H7 b0 b1 \  v7 |8 z3 ]0 @4 B; K

# I7 G2 E2 r. m* x        }
* C/ i' s  i, L
& E7 n5 W& J* _% R. ~        private void swarmSetp() {
# A* ~. `  U+ B4 d( Q5 e                list.addLast(new Agent(Id));
. ^: O- K* i( L6 O                Id++;
- b# C3 |2 G0 P        }8 w1 G) ~' c, C4 T0 d" ^
+ o; E+ V3 R" ]) r1 x
        public Activity activateIn(Swarm context) {9 y" g4 A, K3 ?" l, ]! j5 H
                super.activateIn(context);! ]! I1 r+ q: m4 c
                schedule.activateIn(this);# C) R; x, Y) b: k1 i
                return getActivity();4 w, O. L) a. s
        }
% r9 I& U  A% i
% o3 r$ J1 h5 C8 H        public static void main(String[] args) {
0 i3 f  I4 q6 v# f+ a# c                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% O+ J) ~9 O/ C$ ^) ]
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, `/ O. r' M5 W: G3 d. j6 }* P0 Z. d7 t
                swarms.buildObjects();
. Z- y2 Q- ^8 w/ ?; Z/ v                swarms.buildActions();+ `1 K: N  Q" p. a* e8 A' E+ ]0 F) B
                swarms.activateIn(null).run();
: c# H* a* {" N( `' ^. B' p. X        }4 b- Y( m1 M: w( N! J) w
" Q" l# ~* Y* R. `0 P  I
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-12 13:20 , Processed in 0.023568 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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